Aufbau einer typischen Java-Datei 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 [package mein.paket;] [import paketordner.klassenname;] [import paketorder.*;] public class KlassenName int zahl; KlassenName globalereferenz; [Zugriff/Modus] zahl = 0; zeichenkette = null; public KlassenName() public KlassenName(Parameterliste) [Rückgabe] tueetwas() [Rückgabe] tueetwas(parameterliste) bezeichner(new KlasseName() ;) class InnereKlasse public static void main(string[] args) class KlassenName Jede Klasse kann nur zu einem Paket gehören Einbinden Klassen anderer Pakete * ersetzt nur Klassennamen, nicht Bestandteile des Paketnamens Jede Java-Datei darf nur eine öffentliche Klassendatei enthalten Deklaration eines Feldes Deklaration einer Referenz auf ein Objekt einer anderen Klasse Initalisierungsblock für Klassenfelder, Öffentlicher Konstruktor ohne Parameter Überladener öffentlicher Konstruktor mit Parameterliste Methodendeklarationen ohne Parameterliste Überladene Methode mit Parameterliste Anonyme Klasse, von der direkt ein Objekt erzeugt wird kann daher nur einmal instantiiert werden Innere bzw. Lokale Klasse, die in der umgebenden Klasse beliebig instantiiert werden kann main-methode startet Programm Weitere, nicht-öffentliche Klasse in dieser Datei
Klassendeklaration Klassenkopf [Zugriff] [Modus] Name oder Parametertypen T [beerbt Oberklasse] public private final abstract class KlassenName <T1, T2, usw.> <?> <? extends Klasse> <? super Klasse> [extends OberKlasse] [verwendet Interface 1, Interface 2, usw.] [implements Interface1, Interface 2, usw.] Klassenrumpf Felddeklaration 1; Felddeklaration 2; Felddeklaration n; Methodendeklaration 1; Methodendeklaration 2; Methodendeklaration n; [return Wert;]
Methodendeklaration Methodendeklaration Methodensignatur Parameterliste [Zugriff] [Modus] Rückgabe Name ( ) [Ausnahmebehandlung] public protected private static, final, abstract, synchronized keine bei Konstruktoren void elementarer Datentyp komplexer Datentyp methodenname Datentyp1 parameter1, usw. Datentyp parameterarray [throws ExceptionObjekt] Methodenrumpf Anweisungsblock 1; Anweisungsblock 2; Anweisungsblock n;
Java Sprachkern : Packages der Standard-Edition (SE) java.lang (Fundamentalklasse) javax erweiterter Sprachkern Javas, der u.a. beinhaltet: java.applet (Anwendungen für Browser) java.math (Arithemtik) java.sql (Datenbanken) java.beans (Java-Bean- Architektur) java.net (Netzwerk) java.security (Sicherheit und Zertifikate) java.io (Stream und Nicht- Stream-Klassen) java.nio (zusätzliche AusgabeKlassen) javax.accessibility (behindertengerechter Zugriff) javax.crypto (Verschlüsselung) javax.imageio (Bildverarbeitung) javax.sound (Audio-Klassen) javax.print (Druckservice) javax.xml (XML-Verarbeitung) javax.swing (Swing-Toolset für GUI-Elemente), zu dem u.a. die folgenden Klassen-Pakete zählen: - swing.border - swing.colorchooser - swing.filechooser - swing.plaf - swing.table - swing.text - usw. java.awt java.text (internationale Textformate) java.util (Datum, Listen) Grundlage für die Gestaltung grafischer Oberflächen mit Java, die u.a. beinhaltet: java.awt.event (Eventbehandlung) java.awt.font (Schriftarten) java.awt.graphics (grafische Ausgabe) java.awt.image (Bildbearbeitung) java.awt.print (Druckaufträge) Java Core Java extension
Abstract Window Toolkit, Interfaces und Java extendend java.awt Component EventListener java.awt.event Container ActionListener KeyListener MouseListener WindowListener Window Panel TextAction KeyAdapter MouseAdapter WindowAdapter Frame Dialog Applet JComponent JWindow JFrame JDialog JApplet JTextComponent JLabel AbstractButton JScrollBar JLayeredPane JSeperator JButton JMenuItem JToggleButton javax.swing JCheckBox JRadioButton