|
Oracle Releases Java 24
Wednesday, March 26, 2025
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
AUSTIN, Texas, March 18, 2025 /PRNewswire/ -- Oracle today announced the availability of Java 24, the latest version of the world's number one programming language and development platform. Java 24 (Oracle JDK 24) delivers thousands of improvements to help developers maximize productivity and drive innovation. In addition, enhancements to the platform's performance, stability, and security help organizations accelerate their business growth. Find out more about the latest Java 24 release at the JavaOne 2025 conference in Redwood Shores, CA on March 18-20, 2025.
"As Java approaches its 30(th) 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
|
|
|
 |
Brainomix Completes £14M ($18M) Series C Round to Advance Its Transformative AI Imaging Technology in Healthcare | Mar 28, 2025
|
 |
Task Trainers Market to Reach $2.9 Billion by 2032--Exclusive Report by Meticulous Research® | Mar 28, 2025
|
 |
EVoke Systems Expands Energy Services Exchange (ESX) with OpenADR 3 to Enable Scalable EV Load Management | Mar 28, 2025
|
 |
Bolt.new and Netlify Power 1 Million AI-Generated Websites, Marking a New Era of AI-Driven Web Development | Mar 28, 2025
|
 |
Oracle and Microsoft Add Powerful, Flexible New Services to Oracle Database@Azure and Expand Regional Availability | Mar 28, 2025
|
 |
AI-Based Fraud Detection Tools Market Surges with 15.9% CAGR - Industry Insights & Future Trends | Valuates Reports | Mar 28, 2025
|
 |
CGI completes Novatec acquisition, strengthening its European presence in key commercial industry sectors | Mar 28, 2025
|
 |
GPU as a Service Market worth $26.62 billion by 2030 - Exclusive Report by MarketsandMarkets(TM) | Mar 28, 2025
|
 |
Supermicro Ships Over 20 New Systems that Redefine Single-Socket Performance and Deliver Data Center Power, Space, and Cost Savings | Mar 28, 2025
|
 |
Float Leads in Connecting Nurses with High-Quality Gig Work Opportunities, Updates AI-powered Platform | Mar 28, 2025
|
|
|
|