Analyse des Programms
Nun haben wir schon ein ausführbares Programm. Hier wird nun analysiert wie es genau aufgebaut ist.
- Wie ist die Struktur?
- Wo liegen die Dateien?
Von Klammerpaaren und Blöcken
Klammerpaare dienen in Java zum Gruppieren von zusammengehörigem Code. Diese Gruppen werden auch Blöcke genannt.
Es ist nun wichtig, dass Sie bei allen Klammern immer daran denken, dass diese paarweise eingesetzt werden. Sie müssen also geschlossen werden. Nur so können Sie Code Gruppieren. Wird eine Klammer nicht geschlossen, gibt es keine klare Abgrenzung (ähnlich wie bei normalem Text... Da fehlt wohl eine Klammer!
In Java werden folgende Klammertypen verwendet:
{ }
Geschweifte Klammern für Codeblock( )
Runde Klammern für Methoden/Funktions Signatur (meistens gefolgt von einem Codeblock)[ ]
Eckige Klammern für Auflistungen, auch Arrays genannt
Als eine Besonderheit kennzeichnet dieses Klammerpaar { }
sogenannte Blöcke,
die man auch als Programmabschnitte bezeichnen kann.
Stellt euch eine Fabrik vor. Diese ist auch in verschiedene Räume unterteilt, wobei jeder Raum eine eigene Funktion hat. Das Büro, die Werkstatt, die Fertigungsstrasse.
- Nach einem Codeblock
}
folgt kein Semikolon - Nach einer Schliessenden normalen Klammer
)
folgt in der Regel eine geschweifte Klammer{
- Jeder Befehl endet mit einem Semikolon
;
- Nach jedem Semikolon sollte eine neue Zeile beginnen, muss aber nicht!
- Dies nicht zu machen ist schlechter Stil und gibt Abzug!
🖊 A3: Blöcke finden
Wenden Sie nun das im oberen Abschnitt vorgestellte Konzept der Blöcke an.
Bisher haben wir die Klassen und main
-Methode von Java kennen gelernt.
- Tragen Sie im folgenden HelloWorld-Programm die vorhandenen Blöcke ein.
- Zeichnen Sie ein, welche anderen Klammern Paare bilden.
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
- Sie können in Eclipse mit
// Kommentaren
die Blöcke benennen - Oder Sie können den Block auch mit dem Snipping-Tool "screenshoten" und in einem Programm Ihrer Wahl, mit dem Markertool durchführen. (Paint / ...)
- Order, wenn Sie diese Seite ausdrucken, können Sie die Aufgabe mit einem konventionellen Marker von Hand durchführen.
Struktur der Klasse "HelloWorld"
Java-Programme bestehen aus Klassen. Diese Klassen werden dann als Programme ausgeführt.
Java-Klassen (3) befinden sich in Eclipse in einem Verzeichnis namens src
(1) und haben eine .java
-Dateiendung (2).
- Der Dateinamen ist immer gleich zum Klassennamen, inklusive Gross- und Kleinschreibung!
- Die Klasse
HelloWorld
befindet sich also in der DateiHelloWorld.java
. - Eclipse generiert einen Error, wenn dies nicht übereinstimmt.
🖊 A4: Klasse Umbenennen
- Nennen Sie die Klasse (Nicht Datei)
HelloWorld
inHoiWelt
um.- Sehen Sie den Fehler?
- Nennen Sie die Klasse wieder
HelloWorld
. Dann sollte der Fehler wieder weg sein
Die Klassendefinition
Die Java-Klasse HelloWorld
beginnt mit der Anweisung
public class HelloWorld
, was aussagt, dass es sich um eine öffentliche Klasse
mit dem Namen HelloWorld handelt. Nach dieser folgt eine öffnende geschweifte
Klammer {
, die mit der letzten schliessenden geschweiften Klammer }
zusammen
den Klassenkörper bildet.
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
Die Methode main
Im Klassenkörper befindet sich die main
-Methode
public static void main(String[] args)
. Die main
-Methode ist eine ganz
besondere, sie dient immer als Startort des Programms.
- 🏰 Sie ist sozusagen die Pforte zum Schloss! 🏰
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
Diese Zeile wird auch als Methodensignatur bezeichnet. Im Detail wird die Methodensignatur später angesehen.
Der Methodenkörper
Das nächste paar geschweifter Klammern bildet den Methodenkörper. Darin steht das, was die eigentliche Leistung des Programms ausmacht. Über die Java-Klasse System erfolgt die Ausgabe auf die Console (out), wo eine Zeile ausgegeben wird (println).
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
Package (optional)
In der .java
-Datei kann zuerst das package
angegeben werden, in welchem sich
die aktuelle Klasse befindet.
- Wird kein
package
angegeben, wie beimHelloWorld
Programm der Fall, befindet sich die Datei direkt unter demsrc
Ordner,src/HelloWorld.java
. Eclipse zeigt dann ein(default package)
- Ist ein
package
angegeben, befindet sich die Klasse in einem Unterordner der gleich heisst wie das package. In folgenden Fall untersrc/helloworld/HelloWorld.java
package helloworld;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
Import (optional)
Dann folgen optional import
-Anweisungen, die andere Java- und Programmteile im
eigenen Programm nutzbar machen.
package helloworld;
import some.other.package;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
Dateienstruktur
Wenn Ihr in Eclipse Dateien erstellt, werden automatisch auch Dateien auf dem Dateisystem angelegt. Die Struktur ist meistens gleich zum Project-Explorer von Eclipse.
🖊 A5: HelloWorld.java Datei finden
Und wo liegt nun die HelloWorld.java Datei?
- Klicken Sie in Eclipse mit der rechten Maustaste auf die Klasse
HelloWorld
und wählen Sie «Show in», dann «System Explorer». - Anschliessende sehen Sie die Klasse im Windows Explorer rsp. Finder.