Java SE 9-11 New Features

Dauer: 3 Tage, Tageskurs
Kurssprache: deutsch, Unterrichtsmaterial überwiegend in englischer Sprache


Mit Java SE 9 hielt das Modulsystem Jigsaw Einzug in Java. Auch das JDK selbst wurde modularisiert. Dem Bau modularer Java-Applikationen steht somit nichts mehr im Wege. Darüber hinaus kamen private Methoden in Interfaces sowie jede Menge Convenience Methoden hinzu, um die Entwickler-Produktivität weiter zu erhöhen. Mit JShell existiert nun ein Werkzeug, das sich ideal zum Ausprobieren neuer Klassen bzw. Funktionalitäten im REPL-Stil eignet.
Ab der 10er-Version kann man bei lokalen Variablen den Referenztyp weglassen. Der Compiler bestimmt diesen dank Type Inference selbst.
Im 11er-Release wurde die Funktionalität des seit Java SE 9 neuen HTTP Client API noch deutlich erweitert. So unterstützt diese nun HTTP/2, WebSockets, Server Pushs, asynchrone Aufrufe und reaktive Streams. Viele neuen Methoden lassen sich auch in der String-Klasse finden. Massiv ändert sich ab Java 11 die Support- und Lizenzpolitik von Oracle. Der 3-tägige Kurs bringt den Teilnehmenden anhand vieler praktischen Beispiele und Übungen die neuen Features der Java-Versionen 9 bis 11 näher.

  • Entwickler
  • Projekl Manager
  • Java-Entwickler

  • Java SE 9
    • JEP 102: Process API Updates
    • JEP 110: HTTP 2 Client
    • JEP 200: The Modular JDK
    • JEP 213: Milling Project Coin (bei Bedarf: vorherige Einführung in Default und Static Methoden in Interfaces)
    • JEP 220: Modular Run-Time Images
    • JEP 222: jshell: The Java Shell (Read-Eval-Print Loop)
    • JEP 223: New Version-String Scheme
    • JEP 224: HTML5 Javadoc
    • JEP 225: Javadoc Search
    • JEP 238: Multi-Release JAR Files
    • JEP 247: Compile for Older Platform Versions
    • JEP 248: Make G1 the Default Garbage Collector
    • JEP 254: Compact Strings
    • JEP 260: Encapsulate Most Internal APIs
    • JEP 261: Module System
    • JEP 264: Platform Logging API and Service
    • JEP 266: More Concurrency Updates (bei Bedarf: vorherige Einführung in reaktive Streams sowie wesentliche Concurrency-Konzepte)
    • JEP 269: Convenience Factory Methods for Collections
    • JEP 275: Modular Java Application Packaging
    • JEP 277: Enhanced Deprecation
    • JEP 280: Indify String Concatenation
    • JEP 282: jlink: The Java Linker
    • JEP 289: Deprecate the Applet API
    • JEP 295: Ahead-of-Time Compilation
    • Erweiterungen an Stream API (bei Bedarf: vorherige Einführung in Lambdas und Streams)
  • Java SE 10
    • JEP 286: Local-Variable Type Inference
  • Java SE 11
    • JEP 320: Remove the Java EE and CORBA Modules
    • JEP 321: HTTP Client (Standard)
    • JEP 323: Local-Variable Syntax for Lambda Parameters
    • JEP 327: Unicode 10
    • JEP 328: Flight Recorder
    • JEP 330: Launch Single-File Source-Code Programs
    • JEP 335: Deprecate the Nashorn JavaScript Engine
  • weiters:
    • Unterstützung der neuen Features in klassischen IDEs und Buildwerkzeugen
    • Migration (speziell in Bezug auf Modulsystem Jigsaw) von Applikationen, die mit einer früheren Java-Version erstellt wurden