Themen: Objekt-orientierte Programmierung versus imperative Programmierung, objekt-orientierte Modellierung (UML), Design Patterns, Klassen, Konstruktoren, Modifikatoren, Vererbung, Abstrakte Klassen und Interfaces, Innere Klassen, Abstrakte Datentypen, Fehlerbehandlung, Multithreading und Synchronisation, Event-Handling, Applets und Applikationen, Netz und Sicherheit.
Die behandelten Konzepte werden durch Programmieraufgaben eingeübt und vertieft.
| Termine und Kontakt | Materialien | Leistungsnachweise | Zeitplan und Themenübersicht |
| Teil I: Einführung Sprachkonzepte in Java | ||||
| April | 3 | Einführung | pdf/ib01-vl1.pdf
| code/Vl1
|
|---|---|---|---|---|
| 4 | Zahlendarstellung, Operatoren, Wertebereiche | pdf/ib01-vl2.pdf
| code/Vl2
| |
| 10 | Zeichen, Packages, javadoc, try/catch, Input/Output | pdf/ib01-vl3.pdf
| code/Vl3
| |
| 11 | Programm/Application/Applet, Arrays | pdf/ib01-vl4.pdf
| code/Vl4
| |
| Teil II: Grundlagen der Objektorientierten Programmierung | ||||
| April | 17 | Klassen und ihre Mitglieder | pdf/ib01-vl5.pdf
| code/Vl5
|
| 18 | Konstruktoren, Unterklassen und Vererbung | pdf/ib01-vl6.pdf
| code/Vl6
| |
| 24 | Konstruktor-Verkettung, Shadowing und Overriding | pdf/ib01-vl7.pdf
| code/Vl7
| |
| 25 | Typsicherheit und Vererbung, Kapslung, Zugriffsmodifikatoren | pdf/ib01-vl8.pdf
| code/Vl8
| |
| Mai | 2 | Objektorientiertes Design und Analyse: UML, Design Patterns | pdf/ib01-vl9.pdf
| code/Vl9
|
| 8 | Abstrakte Klassen und Interfaces | pdf/ib01-vl10.pdf
| code/Vl10
| |
| 9 | Innere Klassen: Überblick | pdf/ib01-vl11.pdf
| code/Vl11
| |
| 15 | Innere Klassen: Anwendungsmöglichkeiten | pdf/ib01-vl12.pdf
| code/Vl12
| |
| Teil III Abstrakte Datentypen und Collections | ||||
| Mai | 16 | Abstrakte Datentypen: Array-Collections | pdf/ib01-vl13.pdf
| code/Vl13
|
| 22 | Abstrakte Datentypen: Hash-Collections | pdf/ib01-vl14.pdf
| code/Vl14
| |
| 23 | List-Collections und Tree-Collections / Java 2.0 Collection-Klassen | pdf/ib01-vl15.pdf
| code/Vl15
| |
| Teil IV Spezielle Aspekte von Java | ||||
| Mai | ||||
| 29 | Exceptions | pdf/ib01-vl16.pdf
| code/Vl16
| |
| 30 | Types und Reflections | pdf/ib01-vl17.pdf
| code/Vl17
| |
| Juni | ||||
| 12 | Verlegt auf Do, den 21.6. 18:00 -- 19:30 in E06 | |||
| 13 | Input/Output | pdf/ib01-vl18.pdf
| code/Vl18
| |
| 19 | Multi-Threading: Grundlagen nebenläufiger Prozesse | pdf/ib01-vl19.pdf
| code/Vl19
| |
| 20 | Multi-Threading: Synchronisation und Monitore | pdf/ib01-vl20.pdf
| code/Vl20
| |
| 21 | Multi-Threading: Semaphoren, Ergänzungen | pdf/ib01-vl21.pdf
| code/Vl21
| |
| 26 | GUIs und Event-Handling | pdf/ib01-vl22.pdf
| code/Vl22
| |
| 27 | GUIs Ergänzungen | pdf/ib01-vl23.pdf
| code/Vl23
| |
| Juli | ||||
| 3 | Networking | pdf/ib01-vl24.pdf
| code/Vl24
| |
| Ergänzungen | ||||
| Juli | ||||
| 4 | Graphalgorithmen | pdf/ib01-vl25.pdf
| code/Vl25
| |
| 10 | Vergleich mit anderen Objektorientierten Sprachen | pdf/ib01-vl26.pdf
| code/Vl26
| |
| 11 | Programmiersprachen als formale Sprachen | pdf/ib01-vl27.pdf
| code/Vl27
| |
| Seitenanfang |