Sie sind auf Seite 1von 14

Wiki der JAVA

Programmierung

Java ist eine objektorientierte Programmiersprache und eingetragenes


Warenzeichen der Firma Sun Microsystems. 1995 erschien die erste Version, 6.8
ist die gegenwrtig neueste Version.

Java wird hufig im Programm Netbeans programmiert.

PUC-Wiki Rebol, Rainer, Zirngast Seite 1


bersicht:

1) Wie funktioniert Java


2) Objekerstellung
3) Arithmetische Rechenoperationen
4) If-Anweisung
5) Grundform und Hinweise
6) JUnit
7) Grunddatentypen
8) "And" und "Or"
9) String zu Int / Int zu String
10) Switch-Statement
11) Methoden der Klasse String
12) Quellenangabe
13) while-Schleife
14) 2D Arrays
15) Projekt: Tic Tac Toe
16) MS-DOS
17) Exception
18)Collection
19)GUI
20) Low-Level-API
21) PingPong

PUC-Wiki Rebol, Rainer, Zirngast Seite 2


1) Wie Java funktioniert:

1) Man erstellt ein "Source Document" und benutzt die Java Programmiersprache
um im Programm Netbeans eine Applikation zu schreiben.
2) Man lsst sein Dokument durch den Compiler laufen. Der Compiler checkt auf
Fehler und 3) bersetzt das Dokument in den Java Bytecode. Dieser ist
plattformunabhngig und kann von jedem Gert erkannt werden, das im Stande ist
Java zu lesen. 4) Der Bytecode kann nun auf jeder virtuellen Maschine (z.B.
Desktops, Handys, usw.) erkannt werden.

Von Netbeans aufs Handy oder Desktop

PUC-Wiki Rebol, Rainer, Zirngast Seite 3


2) Objekterstellung:
Der erste Schritt zur fertigen Applikation ist das Erstellen zweier Klassen:
1. die erste Klasse (Sourceklasse) wird bentigt um ein Objekt und dessen Typ
festzulegen.
2. in der zweiten Klasse (Testklasse) wird das Objekt auf Fehler getestet.
2 Tipps: 1. Mit der Tastenkombination <Alt><Shift> formatiert man seinen Javacode.
2. Mit der Tastenkombination <Alt><Einfg> ruft man Setter- und Gettermethoden auf.

Beispiel einer
Netbeans-Oberflche (hier die Sourceklasse)

3) Arithmetische Rechenoperationen:
Die meisten Programme verwenden arithmetische Rechenoperationen:

Operation Darstellung Java-Darstellung


Addition x+7 x+7
Subtraktion x-y x-y
Division x:y x/y
Multiplikation x mal y x*y
Rest x mod y x %y

PUC-Wiki Rebol, Rainer, Zirngast Seite 4


4) If-Anweisung:
Die if-Anweisung ist die meist verwendete Anweisung.

So funktiunierts:
if (anweisung)
{ statement1;
statement2;
...
} else
{ statement1;
statement2;
....
}

Vergleichen von Nummern oder Charakteristiken innerhalb des If-Statements:


Operator Bedeutung Beispiel
== ist gleich x==3
!= ist nicht gleich y!=4
> ist grer als 5>v
< ist kleiner als x<z
<= ist kleiner oder gleich x<=z
>= ist grer oder gleich x>=z

PUC-Wiki Rebol, Rainer, Zirngast Seite 5


5) Grundform und Hinweise:

Die einfachsten Werte in Java sind z.B int, double, ...


Alle Variablen mssen sowohl einen Typ und einen Namen bekommen z.B private
int x; . . . x = 7;
Sie knnen genauso, wie alle anderen Typen als Instanzvariable, als auch als
lokale Variable deklariert werden.

Instanzvariablen: Diese Variablen werden als Erstes unter die die Sourceklasse
deklariert. So sind sie fr das ganze Programm zugreifbar.

Lokale Variablen: Diese sind nur in einzelnen Methoden zu deklarieren. So knnen


sie nur in den jeweiligen Methoden verwendet werden.

Befehle mit Variablen werden immer mit einem; beendet z.B ( private int number1; )
Methoden werden mit einer () beendet z.B ( public void calculate() )
Merken!: private = Eigenschaft, public = Methode

6) JUnit:
JUnit ist ein simples und freies Source-Bezugsystem zum Schreiben und
Ingangbringen von wiederholungsfhigen Tests.
"JUnit-Features" enthaltet Versicherungen zum Testen von erwarteten Ergebnissen
--> Public static void assertEquals( double expected; double actual; double delta)
"Assert" hat 2 doubles und floats die gleich sind im Inneren eine positive delta (z.B.
delta = maximum delta zwischen erwarteten und aktuellen fr welche beiden
Nummern sind dennoch wird berprft ob sie gleich sind oder nicht.)
Falsches Beispiel: assertEquals(3.14;3.17;0,02)
Richtiges Beispiel: assertEquals(3.14;3.17;0,5)

PUC-Wiki Rebol, Rainer, Zirngast Seite 6


Erfolgreicher Test

7) Grunddatentypen:
Es gibt verschiedene Typen, mit den verschiedensten Eigenschaften. Die wichtigsten
davon werden auf der folgenden Tabelle aufgelistet:
Stammtyp Gre Vollstndiger Name
char 16-bit Character
byte 8-bit Byte
short 16-bit Short
int 32-bit Integer
long 64-bit Long
float 32-bit Float
double 64-bit Double
boolean 1-bit Boolean
void - Void

8) "And" und "Or":


And: Mit "And" kann man zwei Bedingungen gleichzeitig berprfen.
Als Zeichen wird das & verwendet.
Beispiel: if ((x>0) &&(y>0))

Or: Mit "Or" kann man eine Bedingung berprfen.


Als Zeichen wird das | verwendet.
Beispiel: if ((x>0) || if(y>0))
PUC-Wiki Rebol, Rainer, Zirngast Seite 7
9) String zu Int/Int zu String:
Diese Operation kann man verwenden, um String-Werte und Texte in Integer's
umzuwandeln, und umgekehrt. Dies kann auerordentlich hilfreich sein. Natrlich
knnen auch Char's usw. in Integer-Werte umgewandelt werden.

10) "Switch" Statement


Switch kann dazu dienen mehrere Flle zu berprfen. Diese Methode ist einfacher
und krzer als mehrere if-Statements zu verwenden.
Anwendung:
switch (value)
{
case '1': help =1;
break;
case '2': help=2;
break;
case '3': help=3;
default: help=4;
}

11) Methoden der Klasse String


Wenn du mit dem Arbeiten an String beginnst kannst du == und != zum
Kommandieren von Objekten benutzen.
Beispiel:
String help1 = "help
String help2 = "help",
if(help1!=help2)
{sout("yes")
}
else
{ sout("no")
}
sourt = system.out.println(...)

12) Quellenangabe

Hier werden verschiedene Objekte und deren Typen verglichen. So kann festgestellt
werden, "woher die Objekttypen stammen" als auch wie sie sich zu einander
verhalten.
Beispiel:
Book c = new Book();
if(bc) {falsch}
Book a = c;
if(ac) {wahr}

PUC-Wiki Rebol, Rainer, Zirngast Seite 8


13) while-Schleife
Das Grundgerst der while-Schleife:
int i = 0, sum = 0;
while (i<nums.length)
{ sum = sum + nums [i];
i++;
}

14) 2-Dimentionale Arrays

Erstellen eines Arrays: int [][] nums = new int [3][3];


Columns => 0 1 2
Row 0 nums [1] [2] = 1;
Row 1 1 nums [2] [0] = 3;
Row 2 3

sum = 0;
for( cd = 0; cd<3; cd++)
{sum = sum + nums [1] [cd];}

15) Projekt: Tic Tac Toe


x o
x x
o o o

=
-1 0 1
-1 -1 0
1 1 1

=> 0 = 1; x = -1;
Summe 3 ... O = Winner
Summe -3 ... X = Winner
1)Feld Erzeugen
2)Feld mit 0 fllen
3) -1 bzw. 1
4)Winner berprfen
5)Ausgabe mit sout()
+ init()
+prinit()
+setValue()
+check() : integer
PUC-Wiki Rebol, Rainer, Zirngast Seite 9
16) MS-DOS-Commands

unter Windows-XP und 7:

1. Ausfhren: cmd
2. Nun ist man im DOS-Eingabe-Fenster
Hufig verwendete DOS-Commands:
cd wechselt in bergeordnetes Verzeinis
cd.. 1 Verzeichnis nach oben
dir zeigt Ordnerinhalt im aktuellen
Verzeichnis an
copy [Quelldatei] [Zieldatei] kopiert Datei(en)
move [Quelldatei] [Zieldatei] verschiebt Datei(en)
delete [Dateinamen] lscht Datei(en)
mkdir erstellt neues Verzeichnis
rmdir lscht Verzeichnis
exit beentet Eingabefenster

hilfreiche Symbole sind auerdem:


? beliebiges Zeichen an dieser Stelle
* beliebige und beliebig viele Zeichen

17) Exception behandlung bei Java ME


Try
{
}
Catch(Exception ex)
{Alert a = new Alert(Fehler);
a.setType(AlertType.ERROR);
a.setString(ex.getMessage();
display.setCurrent(a, myform);
}
PUC-Wiki Rebol, Rainer, Zirngast Seite 10
Ex0031 Calculator

Calculator
- operand1: int
- operand2: int
- result: double
+ Calculator(in op 1: int, in op 2: int)
+ Jtv()
+ getResult(): double

Public class Calculator


{public Calculator(int op1, int op2) throws Exception
If((op1<100)||(op2<-100))
{throws new Exception(invalid number);}
{Operand1 = op1;
Operand2 = op2;}

Calculator calc = new Calculator(3,6);


calc.div();
Hex->Dec

18) Collection
Array mit undefinierter Lnge:
example divisort of a number
n = 5 : 1, 5
n = 10 : 1, 2, 5, 10
n = 16 : 1, 2, 4, 8, 16
java.util(.ArrayList.*
size() length
add(Object elem) adds the object parameter to the list
get(int index) returns the object currently
Array List list = new Array List
for(i=1; i<n/2; i++) //Math.sqrt(n)
{if(n%i)
{int divisor = n/i;
list.add(newInteger(i));
if( i!=divisor) list. add(new Integer(divisor));
}
}
for(i=0; i>list.size(); i++)
type out: {Integer t = (integer)list.get(i);
sout(t.toString());
}

19) GUI
New->JFrame Form-> Name GUI
X JFrame-> Rechtsklick->Set Layout-> Boarder Layout

PUC-Wiki Rebol, Rainer, Zirngast Seite 11


North
West Center East
South
Panel rein ziehen
List ins Panel ziehen
Im Panel-> setLayout -> Boarder Layout
Title Boarder auswhlen.> Titel eingeben
Button hinzufgen: Dirakor: South: TitleBoarder:Input
Set Layout-> Gridbag Layout
Label + Textfield nach Input ziehen
Text: wumber text: 12:columns:12
GridBag Layout-> rechtsklick.> raustornise-> Abstand unten 10 setzen
JBottum markieren -> Events -> Action Performed
Private void on Cumpute(java.awt.eventAction()
{DefaultListModel dlm = new DefaultListModel();
dlm.addElement(new Integer(12);
dlm.addElement(new Integer(1);
JList1.setModel;

20) Low Level API


Erstellen eines Zeichen-Programms:
1. New JFrameForm -> Name: GUI
2. Borderlayout
3. Panel: plCanvas ins Feld ziehen
4. Java Class im Package erstellen (Name: Canvas)
5. im Canvas:
public class Canvas extends JPanel
{@Override
protected void paintComponent(Graphics g)
{super.paintComponent(g);
FERTIG IST DAS GRUNDGERST EINER LOW-LEVEL-API ZEICHENFLCHE

PUC-Wiki Rebol, Rainer, Zirngast Seite 12


Die am hufigst verwendeten Zeichenmethoden lauten:
g.setColor(Color.XXXX)
g.drawLine(StartpunktX, StartpunktY, EndpunktX, EndpunktY)
g.drawRect(StartpunktX, StartpunktY, EndpunktX, EndpunktY)
g.fillRect(StartpunktX, StartpunktY, EndpunktX, EndpunktY)

6.) Jpanel markieren => Code => coustumcreation


Code => new canvas();

PUC-Wiki Rebol, Rainer, Zirngast Seite 13


21) PingPong
nums 0 1 2 3 4 5 6
1 100 2 8 0 11 5
1) Array
1.1) Int [] new nums = new int[nums.length]
int i;
int counter = -1;
for(i =0;i<nums.length;i++)
{int(nums[i]<=4)
{counter ++;
new nums[counter = nums[i]];
}
}

1.2) Ohne Hilfsmittel!!!

PUC-Wiki Rebol, Rainer, Zirngast Seite 14