Vorwort | 7 |
Inhaltsverzeichnis | 11 |
1 Tag 1: Vorbereitungen und Motivation | 17 |
1.1 Motivation: Warum gerade Java? | 17 |
1.2 Vorteile des Selbststudiums | 18 |
1.3 Installation von Java | 19 |
1.4 Testen wir das Java-System | 20 |
2 Tag 2: Grundlegende Prinzipien der Programmentwicklung | 23 |
2.1 Primitive Datentypen und ihreWertebereiche | 23 |
2.2 Variablen und Konstanten | 25 |
2.3 Primitive Datentypen und ihre Operationen | 27 |
2.4 Casting, Typumwandlungen | 32 |
2.5 Methoden der Programmerstellung | 36 |
2.6 Programme in Java | 40 |
2.7 Zusammenfassung und Aufgaben | 41 |
3 Tag 3: Programmieren mit einem einfachen Klassenkonzept | 44 |
3.1 Sequentielle Anweisungen | 45 |
3.2 Verzweigungen | 46 |
3.3 Verschiedene Schleifentypen | 48 |
3.4 Sprunganweisungen | 52 |
3.5 Klassen | 56 |
3.6 Zusammenfassung und Aufgaben | 58 |
4 Tag 4: Daten laden und speichern | 60 |
4.1 Externe Programmeingaben | 61 |
4.2 Daten aus einer Datei einlesen | 62 |
4.3 Daten in eine Datei schreiben | 64 |
4.4 Daten von der Konsole einlesen | 64 |
4.5 Zusammenfassung und Aufgaben | 65 |
5 Tag 5: Verwendung einfacher Datenstrukturen | 67 |
5.1 Arrays und Matrizen | 67 |
5.2 Zusammenfassung und Aufgaben | 75 |
6 Tag 6: Debuggen und Fehlerbehandlungen | 77 |
6.1 Das richtige Konzept | 77 |
6.2 Exceptions in Java | 79 |
6.3 Fehlerhafte Berechnungen aufspüren | 82 |
6.4 Zusammenfassung und Aufgaben | 85 |
7 Tag 7: Erweitertes Klassenkonzept | 87 |
7.1 Entwicklung eines einfachen Fußballmanagers | 87 |
7.2 Aufarbeitung der vorhergehenden Kapitel | 103 |
7.3 Zusammenfassung und Aufgaben | 112 |
8 Tag 8: Verwendung von Bibliotheken | 114 |
8.1 Standardbibliotheken | 114 |
8.2 Mathematik-Bibliothek | 116 |
8.3 Zufallszahlen in Java | 117 |
8.4 Das Spiel Black Jack | 119 |
8.5 JAMA - Lineare Algebra | 131 |
8.6 Eine eigene Bibliothek bauen | 133 |
8.7 Zusammenfassung und Aufgaben | 134 |
9 Tag 9: Grafische Benutzeroberflächen | 136 |
9.1 Fenstermanagement unter AWT | 136 |
9.2 Zeichenfunktionen innerhalb des Fensters verwenden | 138 |
9.3 Auf Fensterereignisse reagieren und sie behandeln | 143 |
9.4 Auf Mausereignisse reagieren | 149 |
9.5 Zusammenfassung und Aufgaben | 150 |
10 Tag 10: Appletprogrammierung | 151 |
10.1 Kurzeinführung in HTML | 151 |
10.2 Applets im Internet | 152 |
10.3 Bauen eines kleinen Applets | 153 |
10.4 Verwendung des Appletviewers | 153 |
10.5 Eine Applikation zum Applet umbauen | 155 |
10.6 Flackernde Applets vermeiden | 158 |
10.7 Ein Beispiel mit mouseDragged | 162 |
10.8 Zusammenfassung und Aufgaben | 163 |
11 Tag 11: Techniken der Programmentwicklung | 165 |
11.1 Der Begriff Algorithmus | 165 |
11.2 Entwurfs-Techniken | 166 |
11.3 Algorithmen miteinander vergleichen | 172 |
11.4 Kleine algorithmische Probleme | 173 |
11.5 Zusammenfassung und Aufgaben | 180 |
12 Tag 12: Bildverarbeitung | 182 |
12.1 Das RGB-Farbmodell | 182 |
12.2 Grafische Spielerei: Apfelmännchen | 184 |
12.3 Zusammenfassung und Aufgaben | 198 |
13 Tag 13: Methoden der Künstlichen Intelligenz | 199 |
13.1 Mustererkennung | 199 |
13.2 Spieltheorie | 212 |
13.3 Zusammenfassung und Aufgaben | 218 |
14 Tag 14: Entwicklung einer größeren Anwendung | 220 |
14.1 Entwurf eines Konzepts | 220 |
14.2 Implementierung | 224 |
14.3 Spielen wir ein Spiel TeeTrist | 237 |
14.4 Dokumentation mit javadoc | 238 |
14.5 Zusammenfassung und Aufgaben | 239 |
15 Java – Weiterführende Konzepte | 241 |
15.1 Professionelle Entwicklungsumgebungen | 241 |
15.2 Das Klassendiagramm als Konzept einer Software | 242 |
15.3 Verwendung externer Bibliotheken | 244 |
15.4 Zusammenarbeit in großen Projekten | 245 |
Glossar | 247 |
Literatur | 252 |
Sachverzeichnis | 255 |