Return to site

🚀 New Java 25 carousel is live — JEPs 470–521!

· java25,java,slides

Today is the release of Java 25, so let's discover what it is about: the features...

Here is one swipeable deck covering the most impactful language, libraries, observability, AOT, and GC updates. Save it, share it, argue over it 😄

Highlights you’ll see:

Language & UX (early slides from 470s–510s)

- 🧩 Primitive Types in Patterns / instanceof / switch — safer narrowing + uniform matching

- 📦 Module Import Declarations — import module java.se; for instant breadth

- ✂️ Compact Source Files & Instance main — zero-boilerplate on-ramp (IO.println)

- 🧱 Flexible Constructor Bodies — validate/initialize before super() safely

- 🧵 Scoped Values (finalized) — simple, fast, bounded-thread context

- 🤝 Structured Concurrency (5th preview) — fork/join done right with StructuredTaskScope

Core libs & crypto

- 🧮 Vector API (10th incubator) — broader SIMD reach + Float16 auto-vectorization

- 🔐 KDF API (final) — HKDF out of the box; Argon2-ready surface

Observability (JFR)

- ⏱️ CPU-Time Profiling — accurate CPU attribution via kernel timers

- 🤝 Cooperative Sampling — safe, low-bias stack sampling at safepoints

- 🔎 Method Timing & Tracing — targeted bytecode instrumentation with filters

AOT & runtime

- 🧰 AOT CLI Ergonomics — one-step train+cache (-XX:AOTCacheOutput)

- 🚀 AOT Method Profiling — preload profiles so JIT optimizes immediately

- 🧱 Compact Object Headers (productized) — smaller heaps, fewer GCs

- 🌱 Generational Shenandoah (productized) — smoother pauses, better throughput

Which JEP are you most excited to try in your services? 👇

(Personally, I like the 507, 511, 512, 513)

#Java #Java25 #OpenJDK #JEP #JVM #Performance #AOT #JFR #Observability #Profiling #Tracing #GarbageCollection

#Shenandoah #StructuredConcurrency #ScopedValues #VectorAPI #Developers #Backend #Cloud #DevTools