Oracle hat die Verfügbarkeit von Java 19 angekündigt, der neuesten Version der weltweit führenden Programmiersprache und Entwicklungsplattform. Java 19 (Oracle JDK 19) bietet Tausende von Leistungs-, Stabilitäts- und Sicherheitsverbesserungen, einschließlich Erweiterungen der Plattform, die Entwicklern helfen, ihre Produktivität zu steigern und unternehmensweite Innovationen voranzutreiben. Oracle wird die neuesten Funktionen von Java 19 auf der JavaOne 2022 vorstellen, die vom 17. bis 20. Oktober in Las Vegas stattfindet, sowie in einer Keynote, die am 20. September auf dev.java/ ausgestrahlt wird.

Das neueste Java Development Kit (JDK) bietet Aktualisierungen und Verbesserungen mit sieben JDK Enhancement Proposals (JEPs). Die meisten dieser Aktualisierungen werden als Nachfolge-Previews bereitgestellt, die die in früheren Versionen eingeführten Funktionen verbessern. JDK 19 enthält Sprachverbesserungen aus dem OpenJDK-Projekt Amber (Record Patterns und Pattern Matching for Switch), Bibliotheksverbesserungen für die Interoperabilität mit Nicht-Java-Code (Foreign Function and Memory API) und für die Nutzung von Vektoranweisungen (Vector API) aus dem OpenJDK-Projekt Panama sowie die ersten Previews für das Projekt Loom (Virtual Threads and Structured Concurrency), das den Aufwand für das Schreiben und die Wartung von nebenläufigen Anwendungen mit hohem Durchsatz in Java drastisch reduzieren wird.

Oracle veröffentlicht alle sechs Monate neue Java-Features nach einem vorhersehbaren Zeitplan. Diese Kadenz sorgt für einen stetigen Strom von Innovationen und bietet gleichzeitig kontinuierliche Verbesserungen der Leistung, Stabilität und Sicherheit der Plattform, was dazu beiträgt, die Verbreitung von Java in Unternehmen und Branchen jeder Größe zu erhöhen. Die wichtigsten Aktualisierungen in Java 19 sind: Updates und Verbesserungen an der Sprache: JEP 405: Record Patterns (Vorschau): Ermöglicht Benutzern die Verschachtelung von Datensatzmustern und Typmustern, um eine leistungsstarke, deklarative und zusammensetzbare Form der Datennavigation und -verarbeitung zu schaffen.

Dies erweitert den Musterabgleich, um anspruchsvollere und zusammensetzbare Datenabfragen zu ermöglichen. JEP 427: Musterabgleich für Switch (Dritte Vorschau): Ermöglicht den Musterabgleich für Switch-Ausdrücke und -Anweisungen, indem ein Ausdruck gegen eine Reihe von Mustern getestet werden kann. Damit können Benutzer komplexe datenorientierte Abfragen prägnant und sicher ausdrücken.

Bibliothekstools: JEP 424: Fremde Funktionen und Speicher-API (Vorschau): Ermöglicht es Java-Programmen, einfacher mit Code und Daten außerhalb der Java-Laufzeitumgebung zu interagieren. Durch den effizienten Aufruf fremder Funktionen (d.h. Code außerhalb der Java Virtual Machine [JVM]) und den sicheren Zugriff auf fremden Speicher (d.h. Speicher, der nicht von der JVM verwaltet wird), ermöglicht diese API Java-Programmen den Aufruf nativer Bibliotheken und die Verarbeitung nativer Daten über ein reines Java-Entwicklungsmodell. Dies führt zu einer höheren Benutzerfreundlichkeit, Leistung, Flexibilität und Sicherheit.

JEP 426: Vektor-API (Vierter Inkubator): Ermöglicht eine höhere Leistung im Vergleich zu äquivalenten skalaren Berechnungen durch die Formulierung von Vektorberechnungen, die zur Laufzeit zuverlässig in Vektorbefehle auf unterstützten CPU-Architekturen kompiliert werden. Ports: JEP 422: Linux/RISC-V Port: Legt den Grundstein für einfachere Linux/RISC-V-Implementierungen, indem dieser Port in das JDK-Hauptrepository integriert wird. Projekt Loom Vorschau/Incubator Funktionen: JEP 425: Virtuelle Threads (Vorschau): Durch die Einführung leichtgewichtiger virtueller Threads in die Java-Plattform wird der Aufwand für das Schreiben, Pflegen und Beobachten gleichzeitiger Anwendungen mit hohem Durchsatz drastisch reduziert.

Die Verwendung von virtuellen Threads ermöglicht es Entwicklern, mit den vorhandenen JDK-Tools und -Techniken auf einfache Weise Fehler zu beheben, zu debuggen und Profile für nebenläufige Anwendungen zu erstellen. JEP 428: Strukturierte Gleichzeitigkeit (Inkubator): Vereinfacht die Fehlerbehandlung und den Abbruch, verbessert die Zuverlässigkeit und erhöht die Beobachtbarkeit, indem es die Multithread-Programmierung vereinfacht und mehrere Aufgaben, die in verschiedenen Threads laufen, als eine einzige Arbeitseinheit behandelt. Java-Innovation in der Cloud vorantreiben: Die Version Java 19 ist das Ergebnis einer umfassenden Zusammenarbeit zwischen Oracle Ingenieuren und anderen Mitgliedern der weltweiten Java-Entwicklergemeinschaft über das OpenJDK-Projekt und den Java Community Process (JCP).

Zusätzlich zu den neuen Verbesserungen wird Java 19 durch den Java Management Service – einen nativen Service der Oracle Cloud Infrastructure (OCI) – unterstützt, der Unternehmen bei der Verwaltung von Java-Laufzeiten und -Anwendungen vor Ort oder in einer beliebigen Cloud hilft. Unterstützung für Java-Kunden: Die Oracle Java SE Subscription ist ein Pay-as-you-go-Angebot, das den Kunden erstklassigen Support, Anspruch auf GraalVM Enterprise, Zugang zum Java Management Service und die Flexibilität bietet, Upgrades im Tempo ihres Unternehmens durchzuführen. Dies hilft IT-Organisationen, die Komplexität zu bewältigen, die Kosten einzudämmen und Sicherheitsrisiken zu minimieren.

Darüber hinaus werden Java SE und GraalVM Enterprise kostenlos auf OCI angeboten, so dass Entwickler Anwendungen erstellen und einsetzen können, die schneller, besser und mit einem unschlagbaren Preis-Leistungs-Verhältnis in der Oracle Cloud laufen. Oracle ist stolz darauf, die einmillionste abgeschlossene Java-Zertifizierung anzuerkennen, was die Beliebtheit von Java in der weltweiten Entwicklergemeinschaft unterstreicht. Java-Zertifizierungen helfen Entwicklern, sich als Java-Experten zu profilieren und ihr Profil bei Unternehmen zu schärfen, die hochqualifizierte Java-Fachleute anwerben wollen.