Java 24, released on March 18, 2025, introduces several experimental features that represent significant advancements in JVM technology. Among the 24 Java Enhancement Proposals (JEPs) included in this release, two are designated as experimental features. Here are the three most interesting experimental innovations in Java 24.
1. Compact Object Headers (JEP 450)
The Compact Object Headers feature represents a fundamental optimization in memory management for the HotSpot JVM. This experimental feature reduces the size of object headers from between 96 and 128 bits down to 64 bits on 64-bit architectures.
Technical Impact
The implementation demonstrates measurable benefits in real-world applications. Early adopters of Project Lilliput, which inspired this feature, report that live data is typically reduced by 10-20%. This reduction translates directly into improved heap utilization, better deployment density, and increased data locality.
Activation and Usage
Since this is an experimental feature, it remains disabled by default. Developers can enable Compact Object Headers using the following JVM flags:
-XX:+UnlockExperimentalVMOptions -XX:+UseCompactObjectHeaders
The feature has undergone extensive testing at Oracle through the full JDK test suite and has been validated by hundreds of services in production environments at Amazon, demonstrating its stability and performance benefits.
2. Generational Shenandoah GC (JEP 404)
The Generational Shenandoah garbage collector enhances (JEP 404) the existing Shenandoah collector with experimental generational collection capabilities. This advancement focuses on improving several critical aspects of garbage collection performance.
Performance Enhancements
Generational Shenandoah targets sustainable throughput improvements, enhanced load-spike resilience, and better memory utilization. The generational approach allows the collector to handle different object lifetimes more efficiently, which is particularly beneficial for applications with varying allocation patterns.
Developer Productivity
This experimental feature aims to increase developer productivity by providing more predictable garbage collection behavior. The generational capabilities help maintain consistent application performance even under varying workload conditions, reducing the need for extensive GC tuning.
3. Ahead-of-Time Class Loading and Linking (JEP 483)
While not explicitly labeled as experimental in all documentation, the ahead-of-time class loading and linking feature represents a significant innovation in JVM startup optimization. This feature aims to dramatically improve application startup times by making classes instantly available in a loaded and linked state when the HotSpot JVM starts.
Implementation Approach
The feature works by monitoring application behavior during one execution run and storing the loaded and linked class information for subsequent startups. This approach eliminates the traditional class loading overhead that occurs during JVM initialization, particularly beneficial for applications with large numbers of classes or complex dependency hierarchies.
Startup Performance Impact
By pre-processing class loading and linking operations, applications can achieve faster startup times, which is especially valuable in containerized environments, serverless computing, and development workflows where frequent application restarts occur.
Experimental Feature Strategy
Java 24's approach to experimental features reflects Oracle's commitment to careful, gradual introduction of significant changes. These experimental designations allow developers to test and provide feedback on major innovations while maintaining the stability of the core platform. The features undergo extensive testing in production environments before potentially becoming standard features in future releases.
The experimental nature of these features requires explicit activation through JVM flags, ensuring that production systems remain stable while allowing early adopters to evaluate the benefits and provide valuable feedback to the development community.