Inhaltsverzeichnis von Band 1
1. Einleitung
1. Java - mehr als nur
kalter Kaffee?
2. Java für Anfänger - das Konzept dieses Buches
3. Weitere Infos und Kontakt zu den Autoren
4. Verwendete Schreibweisen
2. Einige Grundbegriffe
aus der Welt des Programmierens
1. Computer, Software,
Informatik und das Internet
2. Was heißt Programmieren?
3. Aller Anfang ist
schwer
1. Mein erstes Programm
2. Formeln, Ausdrücke und Anweisungen
3. Zahlenbeispiele
4. Verwendung von Variablen
5. Auf den Schirm!
6. Das Programmgerüst
7. Eingeben, übersetzen und ausführen
8. Übungsaufgaben
4. Grundlagen der
Programmierung in Java
1. Grundelemente eines
Java-Programms
1. Kommentare
2. Bezeichner und Namen
3. Literale
4. Reservierte Wörter, Schlüsselwörter
5. Trennzeichen
6. Interpunktionszeichen
7. Operatorsymbole
8. import-Anweisungen
9. Zusammenfassung
10. Übungsaufgaben
2. Erste Schritte in
Java
1. Grundstruktur eines
Java-Programms
2. Ausgaben auf der Konsole
3. Eingaben von der Konsole
4. Schöner Programmieren in Java
5. Zusammenfassung
6. Übungsaufgaben
3. Einfache Datentypen
1. Ganzzahlige
Datentypen
2. Gleitkommatypen
3. Der Datentyp char für Zeichen
4. Zeichenketten
5. Der Datentyp boolean für Wahrheitswerte
6. Implizite und explizite Typumwandlungen
7. Zusammenfassung
8. Übungsaufgaben
4. Der Umgang mit
einfachen Datentypen
1. Variablen
2. Operatoren und Ausdrücke
3. Allgemeine Ausdrücke
4. Ein- und Ausgabe
5. Zusammenfassung
6. Übungsaufgaben
5. Anweisungen und
Ablaufsteuerung
1. Anweisungen
2. Blöcke und ihre Struktur
3. Entscheidungsanweisung
4. Wiederholungsanweisungen, Schleifen
5. Sprungbefehle und markierte Anweisungen
6. Zusammenfassung
7. Übungsaufgaben
5. Praxisbeispiele
1. Worum geht es in
diesem Kapitel?
2. Teilbarkeit zum ersten
1. Aufgabenstellung
2. Analyse des Problems
3. Algorithmische Beschreibung
4. Programmierung in Java
5. Vorsicht Falle
6. Übungsaufgaben
3. Teilbarkeit zum
zweiten
1. Aufgabenstellung
2. Analyse des Problems
3. Algorithmische Beschreibung
4. Programmierung in Java
5. Vorsicht Falle
6. Übungsaufgaben
4. Dreierlei
1. Aufgabenstellung
2. Analyse des Problems
3. Algorithmische Beschreibung
4. Programmierung in Java
5. Vorsicht Falle
6. Übungsaufgaben
6. Referenzdatentypen
1. Felder
1. Was sind Felder ?
2. Deklaration, Erzeugung und Initialisierung von Feldern
3. Felder unbekannter Länge
4. Referenzen
5. Ein besserer Terminkalender
6. Mehrdimensionale Felder
7. Mehrdimensionale Felder unterschiedlicher Länge
8. Vorsicht Falle: Kopieren von mehrdimensionalen Feldern
9. Vereinfachte for-Schleifen-Notation in Java 5.0
10. Zusammenfassung
11. Übungsaufgaben
2. Klassen
1. Was sind Klassen?
2. Deklaration und Instantiierung von Klassen
3. Komponentenzugriff bei Objekten
4. Ein erstes Adressbuch
5. Klassen als Referenzdatentyp
6. Felder von Klassen
7. Vorsicht Falle: Kopieren von geschachtelten Referenzdatentypen
8. Auslagern von Klassen
9. Zusammenfassung
10. Übungsaufgaben
7. Unterprogramme,
Methoden
1. Methoden
1. Was sind Methoden?
2. Deklaration von Methoden
3. Parameterübergabe und -rückgabe
4. Aufruf von Methoden
5. Überladen von Methoden
6. Vorsicht Falle!
7. Sichtbarkeit und Verdecken von Variablen
8. Zusammenfassung
9. Übungsaufgaben
2. Rekursiv definierte
Methoden
1. Motivation
2. Das Achtdamenproblem
3. Zusammenfassung
4. Übungsaufgaben
3. Die Methode main
1.
Kommandozeilenparameter
2. Anwendung der vereinfachten for-Schleifen-Notation in Java 5.0
3. Zusammenfassung
4. Übungsaufgaben
4. Methoden aus anderen
Klassen aufrufen
5. Methoden von Objekten aufrufen
6. Übungsaufgaben
8. Praxisbeispiele
1. Mastermind zum ersten
2. Mastermind zum zweiten
3. Black Jack
1. Aufgabenstellung
2. Analyse des Problems
3. Mischen eines Kartenspiels
4. Die Pflichten des Gebers
5. Zum Hauptprogramm
6. Das komplette Programm im Überblick
7. Übungsaufgaben
9. Die objektorientierte
Philosophie
1. Die Welt, in der wir
leben
2. Programmierparadigmen - Objektorientierung im Vergleich
3. Die vier Grundpfeiler objektorientierter Programmierung
4. Modellbildung - von der realen Welt in den Computer
5. Zusammenfassung
6. Übungsaufgaben
10. Der grundlegende
Umgang mit Klassen
1. Vom Referenzdatentyp
zur Objektorientierung
2. Instanzmethoden
3. Statische Komponenten einer Klasse
4. Instantiierung und Initialisierung
5. Zusammenfassung
6. Übungsaufgaben
11. Vererbung und
Polymorphismus
1. Wozu braucht man
Vererbung?
1. Aufgabenstellung
2. Analyse des Problems
3. Ein erster Ansatz
4. Eine Klasse für sich
5. Stärken der Vererbung
6. Übungsaufgaben
2. Die super-Referenz
3. Überschreiben von Methoden und Variablen
4. Die Klasse java.lang.Object
5. Übungsaufgaben
6. Abstrakte Klassen und Interfaces
7. Übungsaufgaben
8. Weiteres zum Thema Objektorientierung
9. Zusammenfassung
10. Übungsaufgaben
12. Praxisbeispiele
1. Streng geheim
1. Aufgabenstellung
2. Analyse des Problems
3. Verschlüsselung durch Aufblähen
4. XOR-Verschlüsselung
5. Ein einfacher Test
6. Übungsaufgaben
2. Mastermind zum
dritten
1. Aufgabenstellung
2. Die Klassen GameModel und GameEngine
3. Wir bauen ein Modell
4. Programmstart
5. Fazit
6. Übungsaufgaben
3. Game of Life
1. Aufgabenstellung
2. Designphase
3. Die Klasse Zelle
4. Die Klasse Petrischale
5. Die Klasse Life
6. Fazit
7. Übungsaufgaben
13. Exceptions und
Errors
1. Eine Einführung in
Exceptions
1. Was ist eine
Exception?
2. Übungsaufgaben
3. Abfangen von Exceptions
4. Ein Anwendungsbeispiel
5. Die RuntimeException
6. Übungsaufgaben
2. Exceptions für
Fortgeschrittene
1. Definieren eigener
Exceptions
2. Übungsaufgaben
3. Vererbung und Exceptions
4. Vorsicht, Falle!
5. Der finally-Block
6. Die Klassen Throwable und Error
7. Zusammenfassung
8. Übungsaufgaben
3. Assertions
14. Fortgeschrittene
objektorientierte Programmierung in Java 5.0
1. Aufzählungstypen
1. Deklaration eines
Aufzählungstyps
2. Instanzmethoden der enum-Objekte
3. Selbstdefinierte Instanzmethoden für enum-Objekte
4. Übungsaufgaben
2. Generische Datentypen
1. Generizität in alten
Java-Versionen
2. Generizität in Java 5.0
3. Einschränkungen der Typ-Parameter
4. Wildcards
5. Bounded Wildcards
6. Generische Methoden
7. Ausblick auf Band 2
8. Übungsaufgaben
15. Zu guter Letzt
1. Collections
2. Sortieren von Feldern
3. Grafische Oberflächen in Java