Tit
Inh
Ind
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<<
<
>
>>
Verzeichnis der Listings
2.1 Grundstruktur des Schiebepuzzles
2.2 HTML-Datei zum Laden des Schiebepuzzle-Applets
2.3 Die init-Methode des Schiebepuzzle-Applets
2.4 Variablendeklarationen für das Schiebepuzzle
2.5 Vorbereitung der Spielsteine im Schiebepuzzle
2.6 Mischen der Spielsteine im Schiebepuzzle
2.7 Die Methode paint im Schiebepuzzle
2.8 Zeichnen des Rahmens im Schiebepuzzle
2.9 Zeichnen der Spielsteine des Schiebepuzzles
2.10 Die überlagerte update-Methode im Schiebepuzzle
2.11 Die Methode mousePressed im Schiebepuzzle
2.12 Lokale Methoden im Schiebepuzzle
2.13 Die Methode mouseReleased des Schiebepuzzles
2.14 Test benachbarter Spielsteine im Schiebepuzzle
2.15 Die Methode mouseDragged im Schiebepuzzle
3.1 Hello, world
3.2 Einrücken von Klassen und Methoden
3.3 Einrücken von Kontrollanweisungen
3.4 Einrücken fortgesetzter Anweisungen
3.5 Einrücken langer Methodenaufrufe
3.6 Einfache Ausgaben
3.7 Einfache Eingaben
4.1 Verwendung eines Dokumentationskommentars im Java-API
4.2 Einfache Variablen ausgeben
4.3 Initialisieren von Variablen
4.4 Deklaration von Arrays
4.5 Erzeugen von Arrays
4.6 Deklaration und Initialisierung von Arrays
4.7 Initialisierung mit literalen Arrays
4.8 Deklaration und Zugriff auf Arrays
4.9 Zugriff auf mehrdimensionale Arrays
4.10 Ein nicht-rechteckiges Array
4.11 Erzeugen eines Objekts mit dem new-Operator
5.1 Fehler beim Kompilieren durch unvollständige Initialisierung
5.2 Fehler beim Kompilieren durch unvollständige Datenflußanalyse
5.3 String-Verkettung
5.4 Vorsicht bei der String-Verkettung!
5.5 Korrekte String-Verkettung bei gemischten Ausdrücken
5.6 Vergleichen von Referenzen
5.7 Vergleichen von Strings mit equals
5.8 Bindungsprobleme bei den bitweisen Operatoren
5.9 Korrekte Klammerung von bitweisen Operatoren
6.1 Verdecken von Klassen- oder Instanzvariablen
6.2 Dangling else
6.3 Dangling else, ausgeschaltet
6.4 Bedingtes Kompilieren
6.5 Duff's Device
6.6 Das gelabelte break
6.7 Das gelabelte continue
7.1 Eine einfache Klassendefinition
7.2 Erzeugen eines Objekts mit new
7.3 Kombinierte Deklaration und Initialisierung einer Objektvariablen
7.4 Zuweisen von Werten an die Variablen eines Objekts
7.5 Lesender Zugriff auf die Variablen eines Objekts
7.6 Eine einfache Methode zur Altersberechnung
7.7 Aufruf einer Methode
7.8 Verwendung von this
7.9 Eine Methode zur Ausgabe des Alters
7.10 Wiederholter Aufruf der Methode zur Ausgabe des Alters
7.11 Überladen einer Methode
7.12 Definition eines parametrisierten Konstruktors
7.13 Aufruf eines parametrisierten Konstruktors
7.14 Eine Klasse mit mehreren Konstruktoren
7.15 Verkettung von Konstruktoren
7.16 Die finalize-Methode
7.17 Ein einfaches Beispiel für Vererbung
7.18 Zugriff auf geerbte Membervariablen
7.19 Ableitung einer abgeleiteten Klasse
7.20 Zugriff auf mehrfach vererbte Membervariablen
7.21 Überlagern einer Methode in einer abgeleiteten Klasse
7.22 Realisierung eines Instanzenzählers mit Klassenvariablen
7.23 Verwendung von Klassenvariablen zur Definition von Konstanten
7.24 Verwendung von Math.sqrt
7.25 Definition eines statischen Konstruktors
7.26 Abstrakte Klassen und Methoden
7.27 Einfügen einer neuen Mitarbeiterklasse in die Gehaltsberechnung
7.28 Definition eines Interfaces
7.29 Implementieren eines Interfaces
7.30 Definition eines weiteren Interfaces
7.31 Implementieren mehrerer Interfaces
8.1 Zugriff auf verdeckte Membervariablen
8.2 Die Klasse A des Pakets demo
8.3 Die Klasse B des Pakets demo
8.4 Die Klasse C des Pakets demo.tools
8.5 Verwendung der Klassen aus selbstdefinierten Paketen
9.1 Die try-catch-Anweisung
9.2 Ein Programm mit einem Laufzeitfehler
9.3 Abfangen des Laufzeitfehlers mit einer try-catch-Anweisung
9.4 Verwendung des Fehlerobjekts nach einem Laufzeitfehler
9.5 Fortfahren nach Laufzeitfehlern
9.6 Mehr als eine catch-Klausel
9.7 Verwendung der finally-Klausel
9.8 Verwendung der throws-Klausel
9.9 Auslösen einer Ausnahme
10.1 Ein einfacher Thread mit einem Zähler
10.2 Beenden des Threads durch Aufruf von stop
10.3 Anwendung der Methoden interrupt und isInterrupted
10.4 Implementieren von Runnable
10.5 Eine Klasse zur Primfaktorzerlegung
10.6 Verwendung der Klasse zur Primfaktorzerlegung
10.7 Primfaktorzerlegung mit Threads
10.8 Verwendung der Klasse zur Primfaktorzerlegung mit Threads
10.9 Zwei Zählerthreads
10.10 Synchronisation von Threads mit Klassenobjekten
10.11 Eine unzureichend synchronisierte Zählerklasse
10.12 Synchronisieren der Zählermethode
10.13 Ein Producer-/Consumer-Beispiel mit wait und notify
11.1 String-Verkettung und die Methode substring
11.2 Die Methode regionMatches der Klasse String
11.3 Implementierung der String-Verkettung
12.1 Die Methode elements der Klasse Vector
12.2 Anwendung eines Stacks
12.3 Anwendung der Klasse Hashtable
12.4 Konstruktion von Primzahlen mit der Klasse BitSet
12.5 Anwendung der Klasse StringTokenizer
12.6 Zufallszahlen zur Generierung eines Lottotips
12.7 Die Felder der Klasse Calendar
12.8 Datumsarithmetik
12.9 Ausgeben der System-Properties
12.10 Die Auflösung des System-Timers bestimmen
12.11 Verwendung von System.arraycopy
12.12 Sortieren eines Arrays
13.1 Erstellen einer Datei
13.2 Gepufferte Ausgabe in eine Datei
13.3 Schachteln von Writer-Konstruktoren
13.4 Die Klasse PrintWriter
13.5 Konstruktion einer eigenen FilterWriter-Klasse
13.6 Anwendung der Klasse FileReader
13.7 Verwendung der Klasse StringReader
13.8 Eingabepufferung beim Lesen aus Dateien
13.9 Die Klasse LineNumberReader
13.10 Lesen einer .class-Datei mit der Klasse RandomAccessFile
13.11 Verwendung der Klasse File
13.12 Anlegen einer temporären Datei
14.1 Ein einfaches Fenster erzeugen
14.2 Rahmenprogramm für nachfolgende Beispiele
14.3 Ausgabe von Linien
14.4 Ausgabe von Rechtecken
14.5 Ausgabe eines Polygons
14.6 Ausgabe von Kreisen
14.7 Ausgabe von Kreisbögen
14.8 Ausgabe von gefüllten Flächen
14.9 Kopieren von Flächen mit copyArea
14.10 Verwendung der Clipping-Funktionen
15.1 Einfache Textausgabe im Grafikfenster
15.2 Ausgabe verschiedener Schriften
15.3 Auflistung aller Standardschriften
15.4 Auflistung aller Standardschriften im JDK 1.2
15.5 Vergrößern der Schriftart
15.6 Anzeige von Font-Metriken
15.7 Zentrierte Textausgabe
15.8 Ausdruck einer Testseite
16.1 Darstellung des Farbenkreises
16.2 Verwendung von Systemfarben
17.1 Anzeigen und Entfernen eines Frames
17.2 Ein einfacher Bildschirmschoner
17.3 Anzeigezustand eines Fensters umschalten
17.4 Ein Programm mit veränderten Fensterelementen
18.1 Basisprogramm für den Nachrichtentransfer
18.2 Implementieren eines Listener-Interfaces
18.3 Verwendung lokaler Klassen
18.4 Verwendung anonymer Klassen
18.5 Trennung von GUI- und Anwendungslogik
18.6 Überlagern der Komponenten-Event-Handler
19.1 Die Klasse CloseableFrame
19.2 Das eigene Fenster aus der Vogelperspektive
19.3 Reaktion auf Mausklicks
19.4 Zeichnen von Rechtecken durch Ziehen der Maus
19.5 Behandlung von Fokus-Ereignissen
19.6 Reaktion auf Tastaturereignisse
20.1 Erzeugen von Menüs
20.2 Erzeugen eines Menüeintrags mit Beschleuniger
20.3 Menüleisten mit zwei Menüs und Beschleunigertasten
20.4 Geschachtelte Menüs
20.5 Reaktion auf Action-Events aus einem Menü
20.6 Einbinden eines Kontextmenüs
20.7 Kommunikation mit der Zwischenablage
21.1 Ein Dialog mit zwei Buttons
21.2 Die Klasse FlowLayout
21.3 Die Klasse GridLayout
21.4 Das BorderLayout
21.5 Umgang mit GridBagLayout und GridBagConstraints
21.6 Beispiel für GridBagLayout
21.7 Anordnen von Dialogelementen ohne Layoutmanager
21.8 Schachteln von Layoutmanagern
21.9 Eine weitere Anwendung für geschachtelte Layoutmanager
21.10 Konstruktion modaler Dialoge
21.11 Drei modale Standarddialoge
22.1 Rahmenprogramm für Dialogelemente
22.2 Verwendung von Label-Komponenten
22.3 Verwendung von Checkbox-Komponenten
22.4 Behandlung von Item-Events
22.5 Verwendung einer CheckboxGroup
22.6 Verwendung von Textfeldern
22.7 Behandlung von Text-Events
22.8 Textfelder mit Beschriftung
22.9 Behandlung von Text-Events bei der Komponente TextArea
22.10 Verwendung einer TextArea-Komponente
22.11 Behandlung der Ereignisse einer Choice-Komponente
22.12 Verwendung einer Choice-Komponente
22.13 Behandlung der Ereignisse einer List-Komponente
22.14 Verwendung einer List-Komponente
22.15 Verwendung von Scrollbars
22.16 Verwendung der Klasse ScrollPane
23.1 Eine 7-Segment-Anzeige
23.2 Einbinden der 7-Segment-Anzeige
24.1 Laden einer Bitmap-Datei
24.2 Laden und Anzeigen einer Bitmap
24.3 Programm zum Laden und Anzeigen einer Bitmap
24.4 Eine Komponente zum Anzeigen einer Bitmap
24.5 Verwenden der Bitmap-Komponente
24.6 Ein animierter Zähler
24.7 Verwendung von Threads zur Animation
24.8 Abspielen einer Folge von Bitmaps
24.9 Die animierte Schlange
24.10 Bildschirmflackern reduzieren bei stehenden Animationen
24.11 Standard-Implementierung von update
24.12 Modifizierte Version von update
24.13 Modifizierte Schlangenanimation
24.14 update-Methode mit Doppelpufferung
24.15 Animation mit Doppelpufferung
25.1 Ein einfaches Applet
25.2 Verwendung von getParameterInfo
25.3 Die Methode getAppletInfo
25.4 Das APPLET-Tag
25.5 Ein parametrisiertes Applet
25.6 Die HTML-Datei zum Schranken-Applet
25.7 Das sprechende »Hello, World«
25.8 Soundausgabe aus einer Applikation
25.9 Laden von Web-Seiten aus einem Applet
25.10 Die HTML-Datei zum Laden der Webseiten
25.11 Das Wolkenkratzer-Applet
25.12 Die HTML-Datei zum Aufrufen des Wolkenkratzer-Applets
26.1 HTML mit ARCHIVE-Tag
27.1 Anlegen und Bearbeiten zweier Listen
27.2 Zugriff auf eine Collection mit einem Iterator
27.3 Das Interface Queue
27.4 Die Klasse LinkedQueue
27.5 Anwendung der Queue-Klasse
27.6 Generierung eines Lottotips mit HashSet
27.7 Anwendung der Klasse HashMap
27.8 Die Klasse TreeSet
27.9 Rückwärts sortieren mit einem Comparator
27.10 Sortieren einer Liste
28.1 Eine serialisierbare Uhrzeitklasse
28.2 Serialisieren eines Time-Objekts
28.3 Serialisieren mehrerer Objekte
28.4 Deserialisieren eines Time-Objekts
28.5 Deserialisieren mehrerer Elemente
28.6 Die Uhrzeitklasse mit serialVersionUID
28.7 Die Klasse Person
28.8 Serialisieren von Objekten und Referenzen
28.9 Ein einfacher Objektspeicher
28.10 Beispielanwendung für den einfachen Objektspeicher
28.11 Kopieren von Objekten durch Serialisierung
29.1 Langsame String-Verkettung
29.2 Wie der Java-Compiler String-Verkettungen übersetzt
29.3 Performante String-Verkettungen mit StringBuffer.append
29.4 Langsames Einfügen in einen String
29.5 Schnelles Einfügen in einen String
29.6 Vergleich von Listen und Vektoren
29.7 Performance von Writer und OutputStream
29.8 Gepufferter Zugriff auf Random-Access-Dateien
29.9 Test-Programm für den Profiler
29.10 Programm zum Sortieren der Profiling-Informationen
29.11 Sortieren mit QuickSort
29.12 Eine optimierte Ausgabemethode
30.1 Behandeln einer SQLException
30.2 Das Rahmenprogramm der DirDB-Datenbank
30.3 Öffnen und Schließen der DirDB-Datenbank
30.4 Anlegen der DirDB-Tabellen
30.5 Füllen der DirDB-Tabellen
30.6 Anzahl der Sätze in der DirDB-Datenbank
30.7 Suchen nach Dateien in der DirDB-Datenbank
30.8 Suchen nach Verzeichnissen in der DirDB-Datenbank
30.9 Sortieren der Ergebnismenge
30.10 Cluster-Berechnung mit der DirDB-Datenbank
30.11 Die Klasse CachedConnection
30.12 Verwenden eines PreparedStatement
31.1 Dynamisches Laden von Klassen
31.2 Testcode in der main-Methode
31.3 Die Klasse Test
31.4 Die Klasse TestQueue
31.5 Funktionszeiger mit Reflection nachbilden
31.6 Funktionszeiger mit Interfaces
31.7 Parametrisierte Konstruktoren mit Reflection aufrufen
31.8 Die Klasse PrintableObject
32.1 IP-Adressenauflösung
32.2 Abfrage des DayTime-Services
32.3 Lesender und schreibender Zugriff auf einen Socket
32.4 Laden einer Seite von einem Web-Server
32.5 Ein ECHO-Server für Port 7
32.6 Eine verbesserte Version des Echo-Servers
32.7 Ein experimenteller Web-Server
32.8 Daten von einem URL lesen
Tit
Inh
Ind
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<<
<
>
>>
Go To Java 2, Addison Wesley, Version 1.0.2, © 1999 Guido Krüger,
http://www.gkrueger.com