Schulung · Workshop · Coaching · Beratung

Moderne Java Programmierung: Schulung zu Java 21 und 25

Moderne und fortgeschrittene Java Programmierung: Java 21 und 25 im Einsatz

Dauer: ab 1 Tag (8 UE) | Preis: ab 900 EUR (netto) | Live online oder vor Ort | Termin nach Vereinbarung

Sie setzen Generics, Collections, Streams, Records, Pattern Matching und Virtual Threads so ein, dass Ihr Java-Code kürzer, typsicherer und leichter zu warten ist.

Gesamtpreis für bis zu 3 Teilnehmende · Unverbindliche Anfrage · Keine Vorkasse

Was Java seit Version 8 dazugelernt hat – und warum sich der Umstieg lohnt

Java ist längst nicht mehr die geschwätzige Sprache aus den Lehrbüchern der 2000er-Jahre. Records ersetzen seitenlange Datenklassen, switch-Ausdrücke mit Pattern Matching machen Fallunterscheidungen prüfbar, und Virtual Threads erlauben blockierenden, gut lesbaren Code für zehntausende gleichzeitige Anfragen. Wer die Grundlagen beherrscht und produktiver werden will, kommt an diesen Sprachmitteln und an den LTS-Versionen Java 21 und Java 25 nicht vorbei.

Wir beginnen mit dem Release-Modell, der Wahl einer JDK-Distribution und den Neuerungen seit Java 8. Der Hauptteil vertieft Generics mit Schranken und Wildcards samt dem Liskov-Substitutionsprinzip, das Collections Framework einschließlich Sequenced Collections, funktionale Programmierung mit Lambdas, Methodenreferenzen, Streams und Stream Gatherers. Ein eigener Block behandelt Nebenläufigkeit – von Thread, Runnable und ExecutorService über synchronized und Locks bis zu Virtual Threads. Den Abschluss bilden Ein- und Ausgabe mit Scanner, BufferedReader und try-with-resources sowie die Dateiverwaltung mit Path und Files aus NIO.2.

Gerade bei Java liefern Assistenten oft Code im Stil von Java 8: anonyme Klassen, java.io.File, selbst verwaltete Thread-Pools. Mit Claude Code im Terminal zeige ich, wie Sie dem Agenten die Zielversion über --release vorgeben, ihn Bestandscode auf Records und moderne Sammlungen umstellen lassen und jede Änderung mit ./mvnw verify und strengen Compiler-Warnungen abnehmen. Bei nebenläufigem Code reicht ein grüner Test nicht – hier prüfen wir Vorschläge zusätzlich mit Thread-Dumps.

Die Beispiele laufen auf Java 21 oder 25; wo Ihr Team noch auf Java 11 oder 17 arbeitet, markieren wir, welche Sprachmittel erst nach dem Update verfügbar sind. Grundkenntnisse in Java-Syntax und Objektorientierung setzen wir voraus, Ihre eigene Codebasis darf gern als Übungsmaterial dienen.

Erstaunlich viele Teams betreiben ihre Anwendungen auf Java 21 und schreiben trotzdem wie 2014: DTOs mit Gettern und Settern, instanceof-Kaskaden, ein fest dimensionierter Thread-Pool für jeden HTTP-Aufruf. Der Compiler kann inzwischen viel mehr für Sie prüfen – aber nur, wenn Sie ihm mit Records, sealed Typen und vollständigen switch-Ausdrücken die Gelegenheit dazu geben. Die Modernisierung lohnt sich nicht wegen der neuen Syntax, sondern wegen der Fehler, die gar nicht erst entstehen.

Was Sie danach können

  • Sie modellieren Daten mit Records und sealed Typen und werten sie mit Pattern Matching aus
  • Sie schreiben generische Methoden mit Schranken und Wildcards nach der PECS-Regel
  • Sie wählen die passende Collection und verarbeiten Daten mit Streams und Collectors
  • Sie setzen ExecutorService, Virtual Threads und Synchronisation gezielt und fehlerfrei ein
  • Sie lesen, schreiben, durchsuchen und kopieren Dateien und Verzeichnisse mit NIO.2

Zielgruppe und Voraussetzungen

  • Java-Entwickler:innen mit Grundkenntnissen, die fortgeschrittene Sprachmittel sicher beherrschen wollen
  • Teams, die Anwendungen von Java 8, 11 oder 17 auf Java 21 oder 25 heben
  • Entwickler:innen aus anderen Sprachen, die modernes Java für Backend-Projekte lernen
Themen und Inhalte für Ihre Beratung, Coaching, Workshop, Training, Schulung und Weiterbildung:

Moderne und fortgeschrittene Java Programmierung: Java 21 und 25 im Einsatz

Modernes Java im Überblick
  • Fortgeschrittenes Java: Sprachkern, Standardbibliothek und JVM im Zusammenspiel
  • Neuerungen seit Java 8: var, Text Blocks, Records, Pattern Matching, Virtual Threads
  • Release-Takt alle sechs Monate, LTS-Versionen Java 21 und Java 25 und deren Supportzeiträume
  • JDK-Distribution wählen: Eclipse Temurin, Amazon Corretto, Oracle JDK oder Microsoft Build of OpenJDK
  • Kleine Programme ohne Build starten: java Main.java, kompakte Quelldateien und jshell
  • Preview-Features mit --enable-preview ausprobieren und für Produktionscode richtig einordnen
Records, sealed Typen und Pattern Matching
  • Records als unveränderliche Datenträger: kompakte Konstruktoren und Validierung
  • Sealed Classes und Interfaces für abgeschlossene Typhierarchien
  • Pattern Matching mit instanceof, switch-Ausdrücken und Record-Patterns
  • Vollständigkeitsprüfung des Compilers bei switch über sealed Typen nutzen
  • Unbenannte Variablen und Muster mit _ für bewusst ignorierte Werte
  • Text Blocks für SQL, JSON und mehrzeilige Zeichenketten
Generics in Java
  • Typparameter in Klassen und Interfaces: Typsicherheit statt Casts
  • Type Erasure und ihre Folgen: kein new T(), keine generischen Arrays
  • Generische Methoden, Typinferenz und Diamond-Operator <>
  • Begrenzte Typparameter, z. B. <T extends Comparable<? super T>>
  • Liskov-Substitutionsprinzip: warum List<Integer> kein List<Number> ist
  • Wildcards ? extends und ? super nach der PECS-Regel einsetzen
Fortgeschrittene Datenstrukturen und Collections
  • Collections Framework: List, Set, Map und Deque passend zum Zugriffsmuster wählen
  • Unveränderliche Sammlungen mit List.of, Map.of und Stream.toList()
  • Sequenced Collections: getFirst, getLast und reversed seit Java 21
  • LinkedList im Vergleich zu ArrayList und ArrayDeque: Laufzeit und Speicherbedarf
  • Datenpaare in HashMap speichern: Rolle von equals und hashCode, Kollisionen
  • Map-Methoden computeIfAbsent, merge und getOrDefault statt Prüfen-und-Einfügen
  • LinkedHashMap für Einfügereihenfolge und als LRU-Cache mit removeEldestEntry
  • TreeMap und SequencedMap für sortierte Schlüssel und Bereichsabfragen
Funktionale Programmierung in Java
  • Funktionale Interfaces aus java.util.function und eigene mit @FunctionalInterface
  • Lambdas implementieren: effektiv finale Variablen und Gültigkeitsbereich
  • Methodenreferenzen: statisch, gebunden, ungebunden und Konstruktorreferenzen
  • Stream-Pipelines verstehen: Quelle, Zwischen- und Terminaloperation, Lazy Evaluation
  • Optional als Rückgabetyp statt null – und wo es nicht hingehört
  • Gruppieren und Aggregieren mit Collectors.groupingBy, partitioningBy und teeing
  • Stream Gatherers für eigene Zwischenoperationen wie gleitende Fenster
  • Parallele Streams: Voraussetzungen, Messung und typische Fehlannahmen
Nebenläufigkeit in Java
  • Grundbegriffe: Threads, gemeinsamer Zustand, Race Conditions und Sichtbarkeit
  • Die Klasse Thread: Lebenszyklus, start, join und Unterbrechung
  • Runnable und Callable als Aufgaben, Ergebnisse über Future abholen
  • ExecutorService erzeugen, Aufgaben einreichen und per try-with-resources beenden
  • CompletableFuture für verkettete asynchrone Abläufe und Fehlerbehandlung
  • Virtual Threads mit Executors.newVirtualThreadPerTaskExecutor() für I/O-lastige Aufgaben
  • Synchronisierte Methoden und Blöcke, Monitore und Deadlocks erkennen
  • ReentrantLock, atomare Klassen und ConcurrentHashMap als Alternativen zu synchronized
  • Structured Concurrency und Scoped Values: Konzept und aktueller Reifegrad
Eingabe und Ausgabe in Java
  • Byte- und Zeichenströme, Zeichensätze und UTF-8 als Standard seit Java 18
  • Aus System.in lesen mit einem Scanner: Zeilen, Zahlen und Eingabefehler
  • Einfache Konsolenein- und -ausgabe mit der Klasse IO in kompakten Quelldateien
  • Dateien zeilenweise lesen mit BufferedReader und Files.newBufferedReader
  • Files.readString, Files.readAllLines und Files.lines für kleine und große Dateien
  • try-with-resources bei Ein- und Ausgabe: mehrere Ressourcen, unterdrückte Ausnahmen
Dateien und Verzeichnisse mit NIO.2
  • Mit Dateien arbeiten über Path und Files statt java.io.File: Pfade bilden und prüfen
  • Neue Datei erstellen mit Files.createFile, Files.writeString und OpenOption
  • Temporäre Dateien und Verzeichnisse sicher erzeugen und aufräumen
  • Verzeichnisse anlegen, auflisten und durchlaufen mit Files.list und Files.walk
  • Dateien suchen mit Files.find und Glob-Mustern über PathMatcher
  • Dateien kopieren und verschieben mit Files.copy, Files.move und StandardCopyOption
  • Verzeichnisbäume rekursiv kopieren mit Files.walkFileTree und FileVisitor
Build, Tests und statische Analyse
  • Builds mit Maven oder Gradle und dem jeweiligen Wrapper reproduzierbar machen
  • Unit-Tests mit JUnit Jupiter und AssertJ für Generics, Streams und Records
  • Compiler-Warnungen mit -Xlint:all auswerten und Error Prone als zusätzliche Prüfung
Java-Code mit Coding-Agenten modernisieren
  • Zielversion über --release 21 festlegen, damit der Agent keine APIs neuerer JDKs vorschlägt
  • Bestandscode vom Agenten auf Records, switch-Muster und List.of umstellen – Tests vorher grün
  • Maven-Lauf ./mvnw verify mit -Werror als Abnahmekriterium für jeden Agenten-Commit
  • Veraltete Muster in Vorschlägen erkennen: Vector, Hashtable, java.io.File, anonyme Klassen
  • Nebenläufigkeitsänderungen des Agenten mit Thread-Dumps aus jcmd und Lasttests gegenprüfen
Praxisprojekt: Auswertung und Archivierung von Logverzeichnissen
  • Verzeichnisbaum nach Logdateien durchsuchen und nach Alter und Größe filtern
  • Logzeilen mit Virtual Threads parallel einlesen und mit Streams nach Fehlerklassen aggregieren
  • Ergebnisse als Records und sealed Typen modellieren, Bericht als CSV schreiben
  • Ältere Dateien in ein Archivverzeichnis kopieren und das Werkzeug mit JUnit-Tests absichern

*) Die Inhalte werden individuell abgestimmt und mit Praxisbeispielen abgerundet.

Ein Symbol für einen Kalender.

Offene Termine

Kostenlose Reservierung
Ein Symbol für Angebot erhalten.

Unser Angebot

Individuelle Schulung für Einzelpersonen und Teams – live online oder vor Ort.

Dauer

Ein Symbol für Dauer.
ab 1 Tag (8 UE)

Die Dauer richtet sich nach Ihren Inhalten.

Preis

Ein Symbol für Preis.
ab 900 EUR (Nettopreis)
ab 1.071 EUR (Bruttopreis)

Die Preise verstehen sich bei Unternehmern gemäß § 14 BGB zzgl. MwSt. Der dargestellte Ab-Preis gilt für firmeninterne Veranstaltungen und entspricht dem niedrigsten Gesamtpreis für Veranstaltungen mit bis zu drei (3) Teilnehmenden.

Termin

Ein Symbol für einen Kalender.
Ganztägig + halbtägig
nach Vereinbarung

Ganztägig oder halbtägig nach Vereinbarung, live online oder vor Ort.

Ihre Vorteile

Ein Symbol für ein Vorgespräch durchführen.
Persönliches Vorgespräch
Ein Symbol für die individuelle Vorbereitung.
Individuelle Vorbereitung
Ein Symbol für Experten aus der Praxis.
Experten aus der Praxis
Ein Symbol für ein Zertifikat.
Inklusive Zertifikat

Unsere Garantien

1. Relevanz-Garantie

Wir passen den Inhalt spezifisch an die Bedürfnisse jedes Teilnehmers an. Irrelevante Themen werden ausgespart, um den größtmöglichen Nutzen zu garantieren.

2. Qualitäts-Garantie

Durch regelmäßiges Feedback optimieren wir unsere Schulungen kontinuierlich und garantieren Ihnen ein Lernerlebnis der Extraklasse.

3. Zufriedenheits-Garantie

Unsere Zufriedenheitsgarantie spricht für sich – bei Unzufriedenheit entstehen Ihnen keine Kosten.

Wir helfen gerne weiter!

Rufen Sie uns an, schreiben eine E-Mail oder nutzen das Kontaktformular.

Schulung anfragen

Unverbindlich · Keine Vorkasse

Einige Unternehmen, für die wir tätig waren

PROCON GmbH

CoCoNet Computer-Communication Networks GmbH

Sprint Sanierung GmbH

Teilnehmer

Feedback

Herr Hecker ist sehr gut auf individuelle Wünsche, Fragen und Anregungen eingegangen. Eine sehr informative, interessante und gelungene Veranstaltung.
Teilnehmer

Feedback

Herr Hecker hat das Thema sehr anschaulich dargestellt und ist auf alle Fragen eingegangen. Ich fühle mich jetzt gut vorbereitet, um durchzustarten.
Teilnehmer

Feedback

Die gelassene, professionelle Art hat mir gut gefallen. Kompetent, engagiert, professionell. Gute Beispiele, sympathisches Auftreten. Eigene Themenideen wurden aufgegriffen.
Unser Angebot für Ihre firmeninterne Beratung, Coaching, Workshop, Training und Weiterbildung

Lösungen für Ihren Bedarf an Coaching, Workshop, Training, Schulung und Weiterbildung

Profitieren Sie von unserer langjährigen Expertise in der beruflichen Weiterbildung, modernen Lernmethoden und einem Portfolio von über 600 IT-, Online- und Digital-Beratungsleistungen.
Selbstverständlich lassen sich die einzelnen Themen kombinieren. So erhalten Sie genau die Weiterbildung, die Sie wünschen und brauchen - als Coaching, Workshop, Training, Schulung und Weiterbildung!

✓
Ein Symbol für eine einzelne Person.

Für eine Person

Training & Coaching für Einzelpersonen

  • Passgenaue Inhalte auf den einzelnen Teilnehmer zugeschnitten
  • Ein sehr effektives Format, das schnell Ergebnisse bringt
  • Individuelles Training und Coaching motivieren und wirken
Jetzt anfragen
✓
Ein Symbol für eine Gruppe von Personen.

Für eine Gruppe

Training & Workshops für Teams und Abteilungen

  • Bedarfsgerechte Inhalte auf die Herausforderung der Praxis zugeschnitten
  • Konsequente Praxisorientierung, modernste Techniken und Tools
  • Neue Fähigkeiten und Kenntnisse nachhaltig in den Arbeitsalltag integrieren
Jetzt anfragen
✓
Ein Symbol für ein Unternehmen.

Für eine Firma

Training-Komplett-Lösungen für Ihr Unternehmen‍

  • Ganzheitliche Konzepte für Ihre Mitarbeiterentwicklung
  • Individueller Skill-Katalog zur Erweiterung Ihres internen Weiterbildungsangebots
  • Nachhaltige Personalentwicklung realisieren
Jetzt anfragen

So wird daraus Ihre Firmenschulung

1. Bedarf klären: Im kostenlosen Vorgespräch besprechen wir Ziele, Vorkenntnisse und Praxisaufgaben.

2. Angebot abstimmen: Inhalte, Format (live online oder vor Ort), Dauer und Preis legen wir gemeinsam fest.

3. Schulung durchführen: Sie arbeiten an Übungen aus Ihrem Alltag oder an einem neutralen Beispiel und nehmen konkrete nächste Schritte mit.

Häufige Fragen zur Schulung

Gilt der Ab-Preis pro Person oder für die Veranstaltung?

Die 900 EUR netto sind der niedrigste Gesamtpreis für eine firmeninterne Veranstaltung mit bis zu drei Teilnehmenden. Größere Gruppen und einen anderen Umfang bieten wir individuell an. Der verbindliche Preis steht in Ihrem Angebot.

Können wir eigene Aufgaben einbringen?

Ja. Welche Aufgaben sich eignen, welche Zugänge nötig sind und wie wir die Vertraulichkeit sichern, klären wir im Vorgespräch. Alternativ arbeiten wir an einem neutralen Beispiel.

Ist die Anfrage schon eine Buchung?

Nein. Sie erhalten zuerst ein abgestimmtes Angebot und entscheiden dann über die Beauftragung. Eine Vorkasse gibt es nicht.

Ihre unverbindliche und kostenlose Schulungsanfrage zum Thema

Moderne Java Programmierung - Beratung, Coaching, Workshop, Training, Schulung und Weiterbildung

Schildern Sie uns kurz Ihren Bedarf. Ziele, Inhalte und Termin stimmen wir persönlich mit Ihnen ab.

*) Die Angabe erfolgt freiwillig. Wir nutzen Ihre Telefonnummer ausschließlich, um Ihre Anfrage effizienter zu bearbeiten oder Rückfragen zu klären.

Ich interessiere mich für den Termin:

Termin anfragen

Das Angebot von "HECKER CONSULTING" richtet sich ausschließlich an Unternehmen und Behörden (iSv § 14 BGB). Verbraucher (§ 13 BGB) sind vom Vertragsschluss ausgeschlossen. Mit Absendung der Anfrage bestätigt der Anfragende, dass er nicht als Verbraucher, sondern in gewerblicher Tätigkeit handelt. § 312i Abs. 1 S. 1 Nr. 1-3 und S. 2 BGB (Pflichten im elektronischen Geschäftsverkehr) finden keine Anwendung.

Vielen Dank, Ihre Nachricht wurde empfangen!
Beim Absenden des Formulars ist etwas schiefgelaufen.
Beratung, Coaching, Workshop, Training, Schulung

Ähnliche Leistungen, die Sie interessieren könnten.

Wir erweitern ständig unser Beratungsportfolio. Über 600 IT-, Online-, Digital-Beratungsleistungen haben wir für Sie im Programm. Selbstverständlich lassen sich die einzelnen Themen kombinieren. So erhalten Sie genau die Beratung, die Sie wünschen und brauchen - als Coaching, Workshop, Training, Schulung und Weiterbildung!

Mehr IT-, Online-, Digital-Beratungsleistungen anzeigen >>
Nach oben