OpenJDK News Roundup: Wichtige Änderungen und Neuerungen in JDK 24
Überblick über die OpenJDK-Entwicklung
In der Woche des 4. November 2024 gab es zahlreiche Entwicklungen im OpenJDK-Ökosystem. Fünf JEPs (JDK Enhancement Proposals) haben erfolgreich ihre Überprüfung abgeschlossen und sind nun für JDK 24 vorgesehen. Gleichzeitig wurden fünf neue JEPs zur Überprüfung vorgeschlagen, während zwei Entwürfe in den Kandidatenstatus befördert wurden. Einen tiefergehenden Einblick in die neuesten Entwicklungen zu JDK, Spring und GraalVM bietet dieser Artikel.
Neue Features in JDK 24
Die folgenden JEPs wurden als neue Funktionen für JDK 24 bestätigt:
- JEP 493: Diese Änderung reduziert die Größe der JDK-Installation um ca. 25 %, indem die Erstellung von Laufzeit-Images ohne JMOD-Dateien ermöglicht wird. Dies hilft dabei, Speicherplatz einzusparen und die Verteilung von Java-Anwendungen effizienter zu gestalten. Weitere Informationen dazu gibt es direkt bei OpenJDK.
- JEP 491: Ziel ist es, die Skalierbarkeit von Java-Code zu verbessern, indem virtuelle Threads nicht mehr an Plattform-Threads gebunden werden, wenn sie blockieren. Dadurch wird eine größere Anzahl von gleichzeitigen Threads ermöglicht.
- JEP 488: Diese Erweiterung verbessert das Pattern Matching in Java, indem sie primitive Typen in „instanceof“- und „switch“-Anweisungen unterstützt. Dies bietet eine konsistentere und leistungsfähigere Möglichkeit zur Typprüfung.
- JEP 486: Der Security Manager, der bereits in JDK 17 zur Entfernung markiert wurde, wird nun endgültig deaktiviert. Dies spiegelt die Entwicklung modernerer Sicherheitskonzepte wider.
- JEP 450: Durch das Reduzieren der Größe von Objekt-Headern wird die Speichernutzung optimiert. Dies kann insbesondere für speicherintensive Anwendungen vorteilhaft sein.
Geplante Funktionen und Vorschläge für JDK 24
Zusätzlich zu den bereits bestätigten Features wurden weitere JEPs als Kandidaten vorgeschlagen:
- JEP 495: Diese Änderung erleichtert Anfängern das Programmieren, indem sie es ermöglicht, einfache Java-Programme ohne komplexe Klassendeklarationen zu schreiben. Dies trägt zur Zugänglichkeit der Sprache für neue Entwickler bei.
- JEP 494: Entwickler können nun alle von einem Modul exportierten Pakete mit einer einzigen Import-Deklaration einbinden. Dies erleichtert das Arbeiten mit modularen Bibliotheken.
- JEP 492: Diese Funktion erlaubt es, bestimmte Anweisungen vor einem
super()
-Aufruf in einem Konstruktor zu platzieren. Dadurch wird mehr Flexibilität bei der Initialisierung von Objekten geschaffen. - JEP 483: Eine Optimierung, die die Startzeit von Java-Anwendungen verbessert, indem Klassen vorab geladen und verlinkt werden. Dies kann die Performance von Anwendungen, die viele Klassen laden, erheblich verbessern.
- JEP 479: Die Unterstützung für Windows 32-bit wird entfernt, um die Codebasis zu bereinigen. Dies bedeutet, dass ältere Systeme möglicherweise nicht mehr unterstützt werden. Weitere Details dazu sind in der offiziellen Ankündigung von Oracle Java zu finden.
Neue Sicherheitsstandards und Zukunftsaussichten
Auch im Bereich der IT-Sicherheit gibt es Fortschritte. Zwei JEPs beschäftigen sich mit der Implementierung quantenresistenter Verschlüsselungsmechanismen:
- JEP 497: Einführung eines quantenresistenten digitalen Signaturalgorithmus, basierend auf der Modul-Gitter-Kryptographie. Dies stellt eine verbesserte Sicherheit gegen zukünftige Angriffe mit Quantencomputern dar.
- JEP 496: Einführung eines quantenresistenten Schlüssel-Kapselungsmechanismus, der eine sichere Schlüsselübertragung ermöglicht. Dies trägt dazu bei, moderne Verschlüsselungsmethoden zukunftssicher zu machen.
JDK 24 Release-Zeitplan
Mark Reinhold, Chefarchitekt der Java-Plattformgruppe bei Oracle, hat den folgenden Zeitplan für JDK 24 festgelegt:
- Rampdown Phase One: 5. Dezember 2024
- Rampdown Phase Two: 16. Januar 2025
- Erster Release Candidate: 6. Februar 2025
- Finaler Release Candidate: 20. Februar 2025
- Allgemeine Verfügbarkeit: 18. März 2025
Fazit: JDK 24 bringt zahlreiche Verbesserungen
Mit der Vielzahl an neuen Funktionen und Verbesserungen wird JDK 24 eine der umfangreichsten Java-Versionen seit langem. Die Einführung neuer Mechanismen zur Speicheroptimierung, bessere Unterstützung für virtuelle Threads sowie bedeutende Änderungen im Sicherheitsbereich zeigen, dass Java kontinuierlich weiterentwickelt wird. Entwickler können in den kommenden Wochen neue Funktionen testen und Feedback über die Java Bug Database einreichen. Offizielle Informationen zu den neuesten Features sind auf JDK.java.net verfügbar.
Ausblick auf zukünftige Entwicklungen
Da der Funktionsumfang von JDK 24 bereits die bisher höchsten Versionen wie JDK 16 und JDK 11 übertrifft, bleibt abzuwarten, welche weiteren Verbesserungen für zukünftige Java-Versionen geplant sind. Besonders im Bereich der Leistung und Sicherheit ist mit weiteren Optimierungen zu rechnen. Darüber hinaus könnten zukünftige Java-Versionen noch stärker auf die Integration von KI- und Machine-Learning-Technologien fokussiert sein.
Langfristige Auswirkungen auf die Java-Community
Die Änderungen in JDK 24 zeigen, dass Java sich weiterhin als eine der führenden Programmiersprachen etabliert. Durch die ständige Modernisierung des Codes und die Einführung neuer Sprachfunktionen bleibt Java wettbewerbsfähig gegenüber anderen Technologien wie Kotlin oder Rust. Besonders die Optimierungen für virtuelle Threads und die Verbesserung der Startzeit könnten dazu beitragen, dass Java für neue Anwendungsfälle attraktiver wird.