Inside.java [Unofficial]
@inside.java.web.brid.gy
81 documents inside.java
View on Bluesky
Make Java Safer with Flexible Constructor Bodies - Inside Java Newscast Episode #111

Flexible constructor bodies were added to Java 25 with JEP 513. In this episode of the Inside Java Newscast Billy Korando will review the issues with how constructors used to work before Java 25, either forcing developers to write convoluted code, or in some cases undermining the safety and integrity of child classes. Billy will then cover how flexible constructor bodies address these issues and…

LazyConstants in JDK 26 - Inside Java Newscast #106

Lazily initializing fields in Java is error-prone and undermines constant-folding. JDK 26 comes with JEP 526, which previews LazyConstant, a type that lazily initializes a value through a given Supplier. It executes that supplier at most once successfully and then assigns the value to a field annotated with @Stable, which allows constant folding. This API is also a poster child for how OpenJDK…

Optimizing Java Class Metadata in Project Valhalla

In this post, I’ll walk through some of the behind-the-scenes details of one of Project Valhalla’s core features: value classes, and the concept of flattening (or inlining, the term I will use here). Whether you’re a JVM developer or just deeply curious about how Java works under the hood, this technical deep dive is for you.

Analyzing Crashed JVMs - Inside Java Newscast #109

The Java tool jcmd ("j command") sends diagnostic commands to the JVM, which will react by supplying the desired information: from finalizer queues to heap and thread dumps, from GC insights to virtual thread scheduler statistics. At the moment, this requires a running JVM, but once candidate JEP 528 is adopted, a lot of that information can be seamlessly extracted from a crashed JVM's core dump,…

Java 26 in definitely UNDER 3 minutes

Let’s quickly review in definitely under 3 minutes the 10 JEPs (JDK Enhancement Proposals) that were included in the JDK 26 release! Couldn't make it to JavaOne? Catch the biggest moments by joining us on our livestreams for the opening Keynote and Community Keynotes right here on the Java YouTube Channel!

Episode 48 “HTTP/3 in Java 26”

HTTP/3 is the next version of the internet's most important application layer protocol. In this Inside Java Podcast episode, Nicolai Parlog talks to Daniel Fuchs and Daniel Jelinski about HTTP/3's integration into Java's HTTP client.

Java and Post-Quantum Cryptography

In this session, we'll show how the Java Platform is preparing for this paradigm shift in security by adding support for Post-Quantum Cryptography (PQC), which are algorithms designed to be secure against quantum computer attacks. Come to this session to learn about the PQC-related features we've already delivered and what we're working on for JDK 27 and beyond.

Episode 53 “Analyzing Crashed JVMs” [IJN]

The Java tool jcmd (“j command”) sends diagnostic commands to the JVM, which will react by supplying the desired information: from finalizer queues to heap and thread dumps, from GC insights to virtual thread scheduler statistics. At the moment, this requires a running JVM, but once candidate is adopted, a lot of that information can be seamlessly extracted from a crashed JVM’s core dump,…

Post-Quantum Hybrid Key Exchange for TLS 1.3

JEP 527 is now integrated into JDK 27! This feature enhances the security of Java applications by implementing hybrid key exchange algorithms for TLS 1.3. By combining quantum-resistant ML-KEM with traditional elliptic-curve algorithms, the JDK implementation of TLS 1.3 is protected against 'harvest now, decrypt later' threats.

JDK 26 G1/Parallel/Serial GC changes

The OpenJDK project is about to release JDK 26 in a few days. This is a good opportunity to add information about notable changes to the stop-the-world collectors in the Hotspot VM.

Data Oriented Programming, Beyond Records

We've had some good discussions here, and I've got some updates to the ideas outlined in the previous snapshot. There's a lot here, including a lot that I'm identifying as likely future directions but which should not be the topic of current discussion; I want to focus on the highest-priority aspects first...

The Inside Java Newsletter: JavaOne 2026: $100 Discount Now!

The Inside Java Newsletter for January 2026 includes a special limited-time discount code for JavaOne 2026 registration. Register now and save $100! The JavaOne 2026 keynotes and technical sessions have already been announced, and we’re now completing our final preparations for the conference in March. This issue also highlights the sponsors that will be at JavaOne, technical content from videos…

Read more →
Episode 47 “Carrier Classes” [IJN]

This episode presents Project Amber lead Brian Goetz’s recent email “Data Oriented Programming, Beyond Records”, wherein he describes plans to improve Java’s data handling capabilities by introducing carrier classes, a generalization of records...

Java Performance Update: From JDK 21 to JDK 25

JDK 25 has arrived, bringing a major set of performance gains over JDK 21—often letting your existing, unchanged Java applications run faster right away. In this talk, we’ll dive into 13 concrete performance improvements delivered between JDK 21 and JDK 25 across the standard libraries, the JIT compiler, and garbage collectors.

← Newer Page 3