Programm
- 1. Tag
- Java-Syntax und -Klassen - Wiederholung
- Einfache Java-Klassen
- Java-Felder, -Konstruktoren und -Methoden
- Modellieren von Objekten mit Java-Klassen
- Package- und Importanweisungen
- Kapselung und Polymorphie
- Kapselung im Design von Java-Klassen
- Unveränderbarkeit
- Erstellen von Unterklassen, Überladen von Methoden
- Methoden mit variablen Argumenten
- Design von Java-Klassen
- Zugriffsmodifizierer private, protected und public
- Überschreiben von Methoden
- Überladen von Konstruktoren
- Zugriffsmodifizierer private, protected und public
- Virtueller Methodenaufruf, Polymorphie
- Casting von Objektreferenzen
- Überschreiben von Objektmethoden
- Erweitertes Design von Klassen
- Abstrakte Klassen und Typgeneralisierung
- Modifizierer static und final
- Best Practices für Feldmodifizierer
- Entwurfsmuster Singleton
- Design abstrakter Klassen
- Verschachtelte Klassen, Aufzählungstypen 2. Tag
- Vererbung mit Java-Schnittstellen
- Java-Schnittstellen, Arten der Vererbung
- Objektkomposition und Methodendelegierung
- Implementierung mehrerer Schnittstellen
- DAO-Designmuster
- Generics und Collections
- Generische Klassen und Typparameter
- Typinferenz (Diamond)
- Collections und Generics
- Schnittstellen List, Set und Map
- Stack und Deque
- Verarbeiten von Zeichenfolgen
- StringBuilder und StringBuffer
- Wesentliche Zeichenfolgenmethoden
- Parsen von Text in Java, Inputverarbeitung mit Scanner
- Textausgabe und Formatierung
- Reguläre Ausdrücke mit den Klassen Pattern und Matcher 3. Tag
- Exceptions und Assertions
- Exception-Kategorien, Java-Standardklassen von Exceptions
- Erstellen eigener Exception-Klassen
- Klauseln try-catch und finally
- try-with-resources und Schnittstelle AutoCloseable
- Klausel multi-catch
- Best Practices für Exceptions, Assertions
- I/O-Grundlagen
- I/O mit Java
- Lesen des Konsoleninput-Streams, Schreiben an die Konsole
- I/O-Streams, Verketten von I/O-Streams, Kanal-I/O
- Lesen und Schreiben von Objekten mit Serialisierung
- Datei-I/O mit NIO
- Schnittstelle Path, Klasse Files
- Datei- und Verzeichnisvorgänge
- Verwalten von Dateisystemattributen
- Lesen, Schreiben und Erstellen von Dateien
- Verfolgen von Änderungen am Dateisystem 4. Tag
- Threading
- Planung von Betriebssystemaufgaben
- Erkennen von Multithread-Umgebungen
- Erstellen von Multithread-Lösungen
- Gemeinsame Datennutzung über Threads
- Synchronisierung und Deadlock
- Unveränderbare Objekte
- Parallelität
- Erstellen von atomaren Variablen
- Verwenden von Lese-/Schreibsperren
- Thread-sichere Collections
- Parallele Synchronisierungen (Semaphore, Phaser usw.)
- Executors und ThreadPools
- Parallelisierung und Fork-Join Framework 5. Tag
- Datenbankanwendungen mit JDBC
- Layout der JDBC-API
- Erkennen von Multithread-Umgebungen
- Abfragen und Ergebnisse
- PreparedStatement und CallableStatement
- Transaktionen
- RowSet – RowSetProvider und RowSetFactory
- DAO-Muster und JDBC
- Lokalisierung
- Vorteile der Lokalisierung
- Definieren von Gebietsschemas, Locale-Objekte
- Ressourcenpakete
- Formatieren von Meldungen, Datumsangaben und Zahlen
Ziele
In diesem Seminar werden die Syntax der Programmiersprache Java, die objektorientierte Programmierung mit Java, die Erstellung von grafischen Benutzeroberflächen (GUIs), Ausnahmen, Datei-Ein-/Ausgabe (E/A), Threads und Netzwerkprogrammierung behandelt.
Voraussetzungen
Fundamentals of the Java Programming Language~4272oder dem entsprechende Kenntnisse