New Null Checks in Inner Class Constructors
Java 25 introduces mandatory null checks for enclosing instances in inner class constructors, affecting reflection and bytecode invocation.
Nicolai Parlog (nipafx) is a Java Developer Advocate at Oracle who shares deep insights on Java through blogs, talks, books, videos, and open-source projects, helping developers learn and grow.
297 articles from this blog
Java 25 introduces mandatory null checks for enclosing instances in inner class constructors, affecting reflection and bytecode invocation.
Explains scoped values, a new Java 24 feature for safe and efficient thread-local data sharing, as previewed in the Inside Java Newscast.
JDK 24 deprecates the remote debugging features of jstat and jhsdb tools due to their reliance on the outdated RMI protocol.
A look at Java's planned language evolution for 2025, focusing on Project Amber features like flexible constructor bodies and their connection to Project Valhalla.
Overview of major OpenJDK project plans for 2025, including Project Babylon's work on foreign programming models and code reflection.
Overview of JDK 24's key performance enhancements, including virtual thread synchronization and size reduction, plus details on deprecations.
JDK 24 introduces warnings for restricted native access via JNI and FFM APIs, preparing for future restrictions to ensure application integrity by default.
Overview of Java 24's new language features and API changes, including the Stream Gatherer API and Class-File API.
Java 24 reduces virtual thread pinning in synchronized blocks, improving scalability, with details on remaining pinning cases and thread capture.
Explains the Tip & Tail release model used by OpenJDK to manage Java library dependencies and releases, helping developers innovate faster.
Explores modern improvements to Java's beginner experience, including Project Amber features and updated teaching approaches.
A breakdown of the latest draft proposal for value types (Project Valhalla) in Java, explaining the potential new programming model.
A guide on how to properly read and understand Java Enhancement Proposals (JEPs), using the string templates feature as a case study.
Explores the concept of 'integrity by default' in Java, discussing its importance for security and correctness, and a new JEP tying together long-term efforts.
Analyzes Java's current and future capabilities for AI development, challenging the notion that Java is unsuitable for AI.
JDK 23 removes the legacy COMPAT locale data provider, requiring projects to switch to CLDR or custom implementations.
Explores Java's current and future capabilities in AI/ML development, challenging the notion that Java is unsuitable for AI tasks.
Explores the rationale behind updating Data-Oriented Programming principles to version 1.1 for Java, discussing improvements and shortcomings.
Explores the withdrawal of string templates from Java previews, discussing technical reasons, community feedback, and future prospects.
JDK 23 changes the default annotation processing policy, requiring an explicit command-line option to enable it during compilation.