Geek-Ecke #1

Werbung
Geek-Ecke #1 - Einführung in Java
Viktor Bindewald, 29. Juni 2006
1 Warum Java
• Java ist plattformunabhängig
• Java ist weit verbreitet
• Java ist objektorientiert
• Java hat eine vertraute Syntax
2 Wie fange ich an?
Man braucht:
• Java selbst bzw. genauer das JDK 5.0 (http://java.sun.com/j2se/1.5.0/download.jsp)
• einen Editor, eigentlich reicht ein ganz einfacher aber ein Editor mit Zeilennummern und SyntaxHervorhebung ist um einiges bequemer z.B Notepad++ (http://notepad-plus.sourceforge.net)
Listing 1: Hallo Welt - der Klassiker
1
public c l a s s HalloWelt {
public s t a t i c void main ( S t r i n g [ ] a r g s ) {
4
}}
System . out . p r i n t l n ( " H a l l o Welt ! " ) ;
Das erste Programm ist traditionnel ein Hallo-Welt-Programm.
Java-Dateien tragen die Endung .java. Der Quellcode muss mit dem Javacompiler in Bytecode übersetzt
werden. Der entstandene Bytecode kann dann auf jedem System mit installierter Java Laufzeitumgebung
(JRE) gestartet werden. Erst die JRE übersetzt ihn in Machinencode.
Mit javac NameDerDatei.java wird der Compiler aufgerufen und mit java NameDerDatei gestartet.
3 Datentypen
Typ
nimmt folgende Daten Beispieldeklaration
boolean
int
double
char
String
Wahrheitswerte
Ganzzahlen
genaue Flieÿkommazahlen
einzelne Buchstaben
Zeichenketten
boolean b = false;
int i = 110; int j = -7;
double d = 370.7; oder double e = 1e-3;
char c = 'a';
String s = Hallo Welt!
Es gibt noch weitere Datentypen, die oben genannten sind aber die wichtigsten.
Apropos Variablendeklaration: eine als nal deklarierte Variable kann nur ein mal einen Wert aufnehmen,
danach ist sie unveränderbar.
4 Kontrollstrukturen
Dieses Programm soll die Syntax der if-Abfragen und der for-Schleife in Java nahebringen. Es gibt noch weitere
Schleifenarten (while und do while). Alle Schleifen sind aber gleich mächtig, wobei die for-Schleife von den
meisten als die bequemste eingestuft wird.
Listing 2: Multiplizierprogramm (nicht sehr ezient)
2
5
public c l a s s M u l t i p l y {
s t a t i c double m u l t i p l y ( double a , double b ) {
double e r g = 0 ;
i f ( ( a==0) | | ( b==0) ) { return e r g ; }
else {
Geek-Ecke #1 - Einführung in Java
Viktor Bindewald, 29. Juni 2006
for ( int i = 0 ; i < b ; i ++) {
8
}
e r g += a ;
}} return e r g ;
public s t a t i c void main ( S t r i n g [ ] a r g s ) {
double a = Double . p a r s e D o u b l e ( a r g s [ 0 ] ) ;
double b = Double . p a r s e D o u b l e ( a r g s [ 1 ] ) ;
11
14
}}
System . out . p r i n t l n ( m u l t i p l y ( a , b ) ) ;
5 Kommentare
Programmcode zu kommentieren ist sehr wichtig, sonst können andere den Code nicht verstehen und bei etwas
komplizierteren Programmen weiÿ man auch selbst nach einigen Wochen nicht mehr wie es genau funktioniert.
Java kennt 3 Kommentierungsarten. Mit // werden einzeilige Kommentare eingeleitet, mit /* ... */ mehrzeilige. Man sollte aber auch nicht übertreiben und jede Zeile, auch wenn sie gut verständlich ist, kommentieren.
Auÿerdem gibt es spezielle Dokumetationskommentare (/** ... */), die mit javadoc NameDerDatei.java
in HTML-Dateien extrahiert werden können.
Hier ist ein Beispiel wie ein gut kommentiertes Programm aussehen könnte.
Listing 3: Betragberechnungprogramm (nicht sehr ezient)
/∗
3
6
9
12
15
18
21
24
∗ B e r e c h n e t den Be t r a g e i n e r Z a h l
∗
∗ @author V i k t o r Bindewald
∗ @version 20060627
∗/
public c l a s s Betrag {
/∗ ∗
∗ Methode zu Berechnung d e s B e t r a g s e i n e r Z a h l
∗
∗ @param d Z a h l deren B e t ra g man b e r e c h n e n w i l l
∗ @return d e r B e t r a g d e r Z a h l
∗/
public s t a t i c double b e t r a g ( double d ) {
return Math . s q r t ( d ∗ d ) ; }
/∗ ∗
∗ main−Methode zum Testen
∗
∗ @param a r g s T e s t w e r t e
∗/
public s t a t i c void main ( S t r i n g [ ] a r g s ) {
double d = Double . p a r s e D o u b l e ( a r g s [ 0 ] ) ;
System . out . p r i n t l n ( b e t r a g ( d ) ) ;
}}
6 Literatur
Ein ganzes Buch von in der Online-Ausgabe. Ist sehr empfehlenswert für den Anfang.
http://www.galileocomputing.de/openbook/javainsel5/
Die ozielle Dokumentation aller vorgefertigter Klassen und Methoden
http://java.sun.com/j2se/1.5.0/docs/api/
Erläuterungen zu einigen Compiler-Fehlern. Recht nützlich.
http://burro.steinsiepe.ch/codestuf/javatutor1/javatut4.html
Noch ein Openbook, für die jenigen die tiefer eintauchen wollen.
http://www.galileocomputing.de/openbook/java2/
Herunterladen