Oracle Releases Java 24
Oracle has announced the release of Java 24, delivering 24 JDK Enhancement Proposals aimed at maximizing developer productivity and improving the Java language. The latest version introduces significant features including AI and post-quantum crypto capabilities.
Key improvements include:
- Primitive Types in Patterns for enhanced pattern matching
- Stream Gatherers API for efficient data transformation
- Quantum-resistant security features (ML-KEM and ML-DSA)
- Performance optimizations including Compact Object Headers and improved garbage collection
- Enhanced AI development support through Vector API improvements
The release will be showcased at JavaOne 2025 conference in Redwood Shores, CA on March 18-20, 2025. This version marks significant progress as Java approaches its 30th anniversary, reinforcing its position as the world's leading programming language and development platform.
Oracle ha annunciato il rilascio di Java 24, che include 24 Proposte di Miglioramento del JDK volte a massimizzare la produttività degli sviluppatori e a migliorare il linguaggio Java. L'ultima versione introduce funzionalità significative, tra cui capacità di intelligenza artificiale e crittografia post-quantistica.
I principali miglioramenti includono:
- Tipi primitivi nei pattern per un abbinamento dei pattern migliorato
- API Stream Gatherers per una trasformazione dei dati efficiente
- Funzionalità di sicurezza resistenti al quantum (ML-KEM e ML-DSA)
- Ottimizzazioni delle prestazioni tra cui intestazioni di oggetti compatte e miglioramenti nella raccolta dei rifiuti
- Supporto migliorato per lo sviluppo di intelligenza artificiale attraverso miglioramenti dell'API Vector
Il rilascio sarà presentato alla conferenza JavaOne 2025 a Redwood Shores, CA, dal 18 al 20 marzo 2025. Questa versione segna un progresso significativo mentre Java si avvicina al suo 30° anniversario, rafforzando la sua posizione come il linguaggio di programmazione e piattaforma di sviluppo leader nel mondo.
Oracle ha anunciado el lanzamiento de Java 24, que incluye 24 Propuestas de Mejora del JDK destinadas a maximizar la productividad de los desarrolladores y mejorar el lenguaje Java. La última versión presenta características significativas, incluyendo capacidades de inteligencia artificial y criptografía post-cuántica.
Las mejoras clave incluyen:
- Tipos primitivos en patrones para un mejor emparejamiento de patrones
- API Stream Gatherers para una transformación de datos eficiente
- Características de seguridad resistentes a la cuántica (ML-KEM y ML-DSA)
- Optimización del rendimiento que incluye encabezados de objetos compactos y mejoras en la recolección de basura
- Soporte mejorado para el desarrollo de inteligencia artificial a través de mejoras en la API Vector
El lanzamiento se presentará en la conferencia JavaOne 2025 en Redwood Shores, CA, del 18 al 20 de marzo de 2025. Esta versión marca un progreso significativo a medida que Java se acerca a su 30 aniversario, reforzando su posición como el lenguaje de programación y plataforma de desarrollo líder en el mundo.
오라클은 자바 24의 출시를 발표했습니다. 이 버전은 개발자 생산성을 극대화하고 자바 언어를 개선하기 위한 24개의 JDK 개선 제안을 포함하고 있습니다. 최신 버전은 인공지능 및 포스트 양자 암호화 기능을 포함한 중요한 기능들을 도입합니다.
주요 개선 사항은 다음과 같습니다:
- 패턴 매칭을 향상시키기 위한 패턴 내 원시 타입
- 효율적인 데이터 변환을 위한 스트림 수집기 API
- 양자 저항 보안 기능 (ML-KEM 및 ML-DSA)
- 압축 객체 헤더 및 개선된 가비지 수집을 포함한 성능 최적화
- 벡터 API 개선을 통한 인공지능 개발 지원 강화
이 릴리스는 2025년 3월 18일부터 20일까지 캘리포니아 레드우드 쇼어스에서 열리는 자바원 2025 컨퍼런스에서 소개될 예정입니다. 이 버전은 자바가 30주년을 맞이하는 중요한 진전을 나타내며, 세계 최고의 프로그래밍 언어이자 개발 플랫폼으로서의 입지를 강화합니다.
Oracle a annoncé la sortie de Java 24, qui propose 24 propositions d'amélioration du JDK visant à maximiser la productivité des développeurs et à améliorer le langage Java. La dernière version introduit des fonctionnalités significatives, notamment des capacités d'intelligence artificielle et de cryptographie post-quantique.
Les principales améliorations comprennent :
- Types primitifs dans les modèles pour un meilleur appariement des modèles
- API Stream Gatherers pour une transformation efficace des données
- Fonctionnalités de sécurité résistantes aux quantiques (ML-KEM et ML-DSA)
- Optimisations de performance, y compris des en-têtes d'objets compacts et une collecte des déchets améliorée
- Soutien amélioré au développement de l'IA grâce à des améliorations de l'API Vector
La sortie sera présentée lors de la conférence JavaOne 2025 à Redwood Shores, CA, du 18 au 20 mars 2025. Cette version marque un progrès significatif alors que Java approche de son 30e anniversaire, renforçant sa position en tant que principal langage de programmation et plateforme de développement au monde.
Oracle hat die Veröffentlichung von Java 24 angekündigt, das 24 JDK-Verbesserungsvorschläge enthält, die darauf abzielen, die Produktivität der Entwickler zu maximieren und die Java-Sprache zu verbessern. Die neueste Version führt bedeutende Funktionen ein, darunter KI- und post-quantum-kryptografische Fähigkeiten.
Wichtige Verbesserungen umfassen:
- Primitive Typen in Mustern für verbessertes Mustermatching
- Stream Gatherers API für eine effiziente Datenumwandlung
- Quantenresistente Sicherheitsmerkmale (ML-KEM und ML-DSA)
- Leistungsoptimierungen, einschließlich kompakter Objektüberschriften und verbesserter Garbage Collection
- Verbesserte Unterstützung für KI-Entwicklung durch Verbesserungen der Vector API
Die Veröffentlichung wird auf der Konferenz JavaOne 2025 in Redwood Shores, CA, vom 18. bis 20. März 2025 vorgestellt. Diese Version markiert einen bedeutenden Fortschritt, während Java seinem 30. Jubiläum näher kommt, und stärkt seine Position als führende Programmiersprache und Entwicklungsplattform der Welt.
- Introduction of quantum-resistant security features enhancing platform security
- Performance improvements through Compact Object Headers and optimized garbage collection
- Enhanced AI development capabilities through Vector API improvements
- Improved developer productivity with new Stream Gatherers API
- Removal of Windows 32-bit x86 port support
- Deprecation of certain legacy features including Security Manager
New release delivers 24 JDK Enhancement Proposals that help developers maximize productivity and improve the Java language
Enhancements to the platform's performance, stability, and security help organizations accelerate their business growth
New features in support of AI and post-quantum crypto will be highlighted at the JavaOne 2025 conference
"As Java approaches its 30th anniversary later this year it continues to expand its toolset to meet developers' evolving needs, including capabilities that support the development of AI-powered applications," said Arnal Dayaratna, research vice president, software development, IDC. "The wide range of capabilities in the new release will help increase developers' productivity, enabling them to deliver feature-rich applications to their organizations and customers faster and more efficiently. The Java 24 release underscores that Java is unparalleled for the development of enterprise-grade, mission-critical applications at scale."
"Over the past 30 years, Java has provided developers with a comprehensive platform to build and deploy applications that address a diverse range of use cases," said Georges Saab, senior vice president, Oracle Java Platform and chair, OpenJDK governing board. "With more than 20 new features spanning every element of Java, including new AI and post-quantum crypto capabilities, the Java 24 release gives developers the tools they need to build innovative, AI-infused applications. As the stewards of Java, we're excited to work with the global Java community to continue delivering a steady stream of new features via our predictable, six-month cadence."
Language Features
- JEP 488: Primitive Types in Patterns, instanceof, and switch (Second Preview): Helps developers increase Java programming productivity by making the language more uniform and expressive. This feature helps developers enhance pattern matching by removing restrictions pertaining to primitive types that developers encounter when using pattern matching, instanceof, and switch. It also allows primitive type patterns in all pattern contexts and extends instanceof and switch to work with all primitive types. Developers of applications that integrate AI inferencing will especially benefit from support of primitive types.
- JEP 492: Flexible Constructor Bodies (Third Preview): Helps developers improve the reliability of code via the introduction of two distinct prologue and epilogue phases in a constructor body. This enables developers to more naturally place logic that they currently must factor into auxiliary static methods, auxiliary intermediate constructors, or constructor arguments. In addition, it preserves the existing safeguard that code in a subclass constructor cannot interfere with superclass instantiation, resulting in making a class more reliable when methods are overridden.
- JEP 494: Module Import Declarations (Second Preview): Helps developers improve productivity by enabling them to quickly and easily import all the packages exported by a module, without requiring the importing code to be in a module itself. This simplifies the reuse of modular libraries for all developers and helps beginners more easily use third-party libraries and fundamental Java classes without needing to learn where they are located in a package hierarchy. This feature also benefits developers aiming to integrate business logic quickly with native AI inference, library, or service calls.
- JEP 495: Simple Source Files and Instance Main Methods (Fourth Preview): Helps students write their first programs without needing to understand language features designed for large programs by offering a smooth on-ramp to Java programming. As a result, educators and instructors can introduce concepts gradually, and students can write streamlined declarations for single-class programs and seamlessly expand their programs with more advanced features as their skills grow. In addition, experienced Java developers can write small programs succinctly and efficiently without needing to use tools designed for larger projects.
Libraries
- JEP 485: Stream Gatherers: Helps developers become more efficient in reading, writing, and maintaining Java code by enhancing the Stream API to support custom intermediate operations, which allow stream pipelines to transform data in ways that are not easily achievable with existing built-in intermediate operations.
- JEP 484: Class-File API: Helps developers improve productivity by providing a standard API for parsing, generating, and transforming Java class files and tracking the class file format defined by the Java Virtual Machine specification.
- JEP 487: Scoped Values (Fourth Preview): Helps developers increase the ease-of-use, comprehensibility, performance, and robustness of their projects by enabling the sharing of immutable data within and across threads.
- JEP 489: Vector API (Ninth Incubator): Helps developers improve productivity by introducing an API to express vector computations that reliably compile at runtime to vector instructions on supported CPU architectures. As a result, developers can achieve performance superior to equivalent scalar computations, which are often used in AI inference and compute scenarios.
- JEP 499: Structured Concurrency (Fourth Preview): Helps developers improve the maintainability, reliability, and observability of multithreaded code by simplifying concurrent programming via a new API for structured concurrency. By treating groups of related tasks running in different threads as a single unit of work, structured concurrency can help reduce common risks arising from cancellation and shutdown, such as thread leaks and cancellation delays.
Security Libraries
- JEP 478: Key Derivation Function API (Preview): Helps developers prepare for emerging quantum computing environments by offering cryptographic security for data in transit. This improves confidentiality and communication integrity.
- JEP 496: Quantum-Resistant Module-Lattice-Based Key Encapsulation Mechanism: Helps increase the security of Java applications by providing an implementation of the quantum-resistant Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM). This feature is an important step towards post-quantum readiness and the eventual delivery of post-quantum crypto (PQC) support for the Java platform, as key encapsulation mechanisms are used to secure symmetric keys over insecure communication channels using public key cryptography.
- JEP 497: Quantum-Resistant Module-Lattice-Based Digital Signature Algorithm: Helps increase the security of Java applications by providing an implementation of the quantum-resistant Module-Lattice-Based Digital Signature Algorithm (ML-DSA). As with JEP 496, this feature is an important step towards post-quantum readiness and the eventual delivery of PQC support for the Java platform, as digital signatures are used to detect unauthorized modifications to data and to authenticate the identity of signatories. ML-DSA is designed to secure against future quantum computing attacks, and it has been standardized by the United States National Institute of Standards and Technology (NIST) in FIPS 204.
Tools
- JEP 493: Linking Run-Time Images without JMODs: Helps developers increase efficiency by enabling the jlink tool to create custom run-time images without using the JDK's JMOD files, which can reduce the size of the JDK by approximately 25 percent. As a result, developers can link a run-time image from modules regardless of whether those modules are standalone JMOD files, modular JAR files, or part of a run-time image previously linked. This feature must be enabled when the JDK is built; it will not be enabled by default and some JDK vendors may choose not to enable it.
Performance and Runtime Updates
- JEP 450: Compact Object Headers (Experimental): Helps developers increase productivity by reducing the size of object headers in the HotSpot JVM between 96 and 128 bits down to 64 bits on 64-bit architectures. This helps reduce heap size, improve deployment density, and increase data locality.
- JEP 475: Late Barrier Extension for G1: Helps developers increase efficiency by shifting the expansion of the G1 garbage collector's barriers from early in the C2 JIT's compilation pipeline to later, which can reduce overhead if it occurs after platform-independent optimizations and register allocation. By simplifying the implementation of the G1 garbage collector's barriers, this feature helps increase the efficiency, comprehensibility, resiliency, and quality of C2-generated code.
- JEP 483: Ahead-of-Time Class Loading & Linking: Helps developers increase productivity and improve startup time by making classes of an application instantly available in a loaded and linked state when the HotSpot Java Virtual Machine starts. This feature does not require the use of the jlink or jpackage tools, and it does not require any change to how applications are started from the command line or any change to the code of applications, libraries, or frameworks. As a result, it helps lay a foundation for continued improvements in startup and warmup time.
- JEP 490: ZGC: Remove the Non-Generational Mode: Helps developers reduce the maintenance cost of supporting two different modes by removing the non-generational mode of the Z Garbage Collector (ZGC).
- JEP 491: Synchronize Virtual Threads without Pinning: Helps developers increase productivity by extending the scalability of Java code and libraries that use synchronized methods and statements. By enabling virtual threads to release their underlying platform threads, this feature gives developers access to more virtual threads to manage their applications' workloads.
Source Code
- JEP 404: Generational Shenandoah (Experimental): Helps developers increase productivity by enhancing the Shenandoah garbage collector with experimental generational collection capabilities that improve sustainable throughput, load-spike resilience, and memory utilization.
- JEP 479: Remove the Windows 32-bit x86 Port: Helps developers increase efficiency by removing the source code and build support for the Windows 32-bit x86 port, which simplifies the JDK's build and test infrastructure.
- JEP 501: Deprecate the 32-bit x86 Port for Removal: Helps developers increase productivity by deprecating the 32-bit x86 port with the intent to remove it in a future release. This helps developers gain access to new features that require platform-specific support without having to implement 32-bit x86 fallbacks.
In addition, by introducing modern, safe features while gradually deprecating and removing unsafe features, Oracle underscores its commitment to maintaining the integrity of Java and aligning with software development best practices. Oracle has designated three features for removal in a future Java release: JEP 472: Prepare to Restrict the Use of JNI; JEP 486: Permanently Disable the Security Manager; and JEP 498: Warn upon Use of Memory-Access Methods in sun.misc.Unsafe.
The features in the Java 24 release are a result of continuous collaboration between Oracle and other members of the global Java developer community via OpenJDK and the Java Community Process (JCP). For more details on the features in Java 24, please read the Java 24 technical blog post.
Supporting the Global Java Community with Innovation in the Cloud
Java delivers increased innovation, performance, efficiency, and cost savings when deployed on Oracle Cloud Infrastructure (OCI), which is one of the first hyperscale clouds to support Java 24. By delivering Oracle Java SE, Oracle GraalVM, and the Java SE Subscription Enterprise Performance Pack at no additional charge on OCI, Java 24 helps developers create and deploy applications that run faster, better, and with optimized cost-performance.
The Oracle Java Universal SE Subscription provides customers with best-in-class support. It includes the Java SE Subscription Enterprise Performance Pack, triage support for the entire Java portfolio, entitlement to Oracle GraalVM, access to the advanced features of the Java Management Service, and the flexibility to upgrade at the pace of customers' businesses. This helps IT organizations manage complexity, mitigate security risks, and contain costs.
Supporting Quotes
"I'm looking forward to the additional refinement of the Java Vector API in Java 24 to further enhance both predictive and generative AI applications," said Frank Greco, chairman, NYJavaSIG. "Enabling efficient AI algorithms directly in Java helps ensure that AI applications will be highly efficient and scalable across various modern hardware platforms."
"Java 24 introduces Stream Gatherers, a powerful enhancement that gives developers fine-grained control over how elements are grouped and processed within streams," said Richard Fichtner, CEO, XDEV Software GmbH. "This makes complex data transformations more expressive and efficient. I love the feature because it eliminates workarounds like custom collectors or flatMap gymnastics, allowing for more readable and maintainable stream pipelines."
"Java is like a sauce created by a fabulous chef, with ingredients chosen carefully, simmered just enough to get the best flavors out," said Dr. Venkat Subramaniam, founder, Agile Developer, Inc. "My current favorite flavors are the Stream Gatherers API, Scoped Values, and Structured Concurrency."
"The third preview of flexible constructors in Java 24 is a notable feature, as it will be very beneficial to not have to create a private helper method so I can make my calls to this/super a one liner," said Jeanne Boyarsky, developer, CodeRanch. "The stream gatherers feature is also intriguing, and I'm looking forward to libraries coming up with lots of new intermediate operations to draw on."
"At JetBrains, we're excited to provide Java 24 support in IntelliJ IDEA from day one," said Marit van Dijk, Java developer advocate, JetBrains. "Our commitment to keeping pace with the latest Java enhancements helps ensure developers can seamlessly adopt the valuable new features, while the ability to download Java 24 directly within the IDE makes setup effortless."
To learn more about Java and its global ecosystem, please visit:
- Dev.java: The official portal for learning Java
- Inside.java: News and views from the members of the Java Team at Oracle
- Java YouTube: The official Java YouTube channel for Java learning videos
Additional Resources
- Download Oracle JDK 24
- Read the Java 24 technical blog
- Learn more about JavaOne 2025
- Watch the JavaOne 2025 keynotes livestream
- Watch JavaOne 2025 session replays
- Learn more about the Oracle Java SE Universal Subscription
- Learn more about the Java Management Service
About Oracle
Oracle offers integrated suites of applications plus secure, autonomous infrastructure in the Oracle Cloud. For more information about Oracle (NYSE: ORCL), please visit us at www.oracle.com.
Future Product Disclaimer
The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, timing, and pricing of any features or functionality described for Oracle's products may change and remains at the sole discretion of Oracle Corporation.
Trademarks
Oracle, Java, MySQL and NetSuite are registered trademarks of Oracle Corporation. NetSuite was the first cloud company—ushering in the new era of cloud computing.
View original content to download multimedia:https://www.prnewswire.com/news-releases/oracle-releases-java-24-302403853.html
SOURCE Oracle