Java SE 24 wurde veröffentlicht. Informieren Sie sich über die neuen Funktionen, Verbesserungen und mehr.

Java-Plattform, Standard Edition

Nach sechs Monaten Entwicklung Oracle hat die Veröffentlichung von Java SE 24 angekündigt, basierend auf dem Open-Source-Projekt OpenJDK, wobei die Abwärtskompatibilität gewahrt bleibt, sodass die meisten zuvor entwickelten Projekte ohne Änderungen weiterhin ausgeführt werden können.

Im Gegensatz zu Long-Term Support (LTS)-Releases, Java SE 24 ist eine reguläre Support-Version, was Updates bis zur nächsten Version impliziert. Für diejenigen, die Wert auf langfristige Stabilität legen, werden Java SE 21 und Java SE 17 bis 2031 bzw. 2029 weiterhin unterstützt. Darüber hinaus wird der erweiterte Support für Java SE 8 LTS bis 2030 fortgesetzt, während Java SE 11 bis 2032 in Kraft bleibt.

Verbesserungen und neue Funktionen

In dieser neuen Version von Java SE 24 ist einer der wichtigsten Verbesserungen ist die Einführung von Ein experimenteller generativer Modus für den Shenandoah Garbage Collector (dazu konzipiert, neue und alte Objekte getrennt zu verarbeiten). Dieser neue Modus verbessert die Effizienz beim Bereinigen kurzlebiger Objekte, optimiert die Speichernutzung und bietet eine stabilere Leistung bei unterschiedlichen Belastungen.

Eine weitere Neuheit, die auffällt, ist die Experimentelle Unterstützung für kompakte Objektheader in der HotSpot JVM, wodurch seine Größe auf 96-Bit-Systemen von 64 auf 64 Bit reduziert wird. Diese Optimierung trägt dazu bei, die Heap-Größe zu reduzieren und die Effizienz des Speichercaches zu verbessern.

Der Müllsammler G1 wurde auch mit einem Redesign optimiert der Barrieren, die den Speicherzugriff von Anwendungen überwachen. Die Barriereerweiterung wird jetzt später im Kompilierungsprozess innerhalb des C2 JIT-Compilers durchgeführt, wodurch der Overhead je nach Anwendungstyp um bis zu 20 % reduziert wird.

Verbesserungen bei Sicherheit und Verschlüsselung

Java SE 24 führt eine API für die Ableitung kryptografischer Schlüssel (KDF), Ermöglicht die Generierung zusätzlicher Schlüssel aus einem geheimen Schlüssel und einem beliebigen Datensatz. Diese API, die sich noch in der Vorschauphase befindet, stärkt die Sicherheit der Schlüsselverwaltung innerhalb der Plattform.

Zusätzlich Warnungen zur Verwendung von APIs wurden hinzugefügt Java Native Interface und Fremdfunktion & Speicher, in Vorbereitung auf die zukünftige Implementierung eines Integritätsmodus, der den Standardzugriff auf nativen Code einschränkt. Warnungen wurden auch aktiviert, wenn externe Speicherzugriffsmethoden über die Klasse sun.misc.Unsafe verwendet werden, und empfehlen eine Migration zur VarHandle-API.

Andererseits ist in Java SE 24 die Unterstützung für ML-KEM-Kryptografiealgorithmen und ML-DSA (entworfen, um resistent gegen Quantencomputer-Angriffe). Diese Algorithmen basieren auf Problemen der Netzwerktheorie und stellen sicher, dass die Lösungszeiten sowohl auf herkömmlichen als auch auf Quantencomputern gleich sind.

Der Java Security Manager, der seit dem Ende der Browser-Plugin-Unterstützung veraltet war, wurde dauerhaft entfernt.

Optimierungen

JVM HotSpot ermöglicht jetzt das frühzeitige Vorladen und Verknüpfen von Klassen, was den Anwendungsstart erheblich beschleunigt. Beim ersten Ausführen wird der Status der Klassen zwischengespeichert, um das Laden bei zukünftigen Starts zu erleichtern.

auch Die Implementierung von Scoped Values ​​wurde verbessert, die jetzt permöglicht die gemeinsame Nutzung unveränderlicher Daten zwischen Threads effizienter und ersetzt den traditionellen Thread-lokalen Variablenmechanismus. Dies ist besonders vorteilhaft, wenn mit Millionen virtueller Threads gleichzeitig gearbeitet wird.

Eine weitere Neuheit ist die Optimierung virtueller Threads in blockierten Zuständen. In dieser Version gibt ein blockierter virtueller Thread seinen Plattform-Thread frei, sodass dieser von anderen Threads wiederverwendet werden kann. Dies verbessert die Skalierbarkeit auf Systemen mit hoher Multithreading-Nutzung.

Der andere Änderungen, die auffallen:

  • Neue Erweiterung der Stream-API, die es Ihnen ermöglicht, benutzerdefinierte Zwischenvorgänge zu definieren.
  • Mustervergleichs-Engines wurden erweitert, um primitive Typen (int, byte, char usw.) in Switch-Ausdrücken und dem Instanceof-Operator zu unterstützen.
  • Eine vierte Vorschauversion der Structured Concurrency API wurde hinzugefügt, die die Entwicklung von Multithread-Anwendungen vereinfacht, indem Aufgaben auf verschiedenen Threads als eine einzige Ausführungseinheit behandelt werden.
  • Es wurde eine einfachere Möglichkeit zum Deklarieren von Klassen und Definieren der main()-Methode eingeführt, sodass die Notwendigkeit entfällt, eine öffentliche Klasse mit statischen Methoden zu definieren.
  • Es wurde eine Klassendatei-API hinzugefügt, mit der Sie Java-Klassendateien einfacher und programmgesteuert analysieren, generieren und transformieren können.

Wenn Sie daran interessiert sind, mehr darüber zu erfahren, können Sie die Details im folgenden Link

Laden Sie Java SE 24 herunter

Wer sich für die Installation der neuen Version von Java SE 24 interessiert, sollte wissen, dass die Kompilierungen (JDK, JRE und Server JRE) bereits bereit sind Linux, Windows und macOS.