
Java 21 Release Party
Deep Dive Into the New Features
Recording available until 19. December 2023
Recording available until
Discover the New Features of Java 21
Java 21 is the next major long-term support release for the popular programming language.
Many strands come together here, the experimental features reach maturity, innovations such as pattern matching, virtual threads and unnamed classes raise developer productivity to a new level.
Join our Java 21 Release Live Event to get the latest from our experts Falk Sippach, Michael Inden and Sven Woltmann.
We bring you up to speed and show you what Java 21 has to offer!

Program
All times are CEST
Redefining Concurrency: A Deep Dive into Virtual Threads
14:00 - 15:00
Sven Woltmann
After years of development and nearly 100,000 modified lines of code in the JDK, Java 21 brings us the final version of Project Loom’s virtual threads. In this talk, you will learn everything you need to know about them.
Through an example application, you will discover what virtual threads are, why we need them, how to use them, their advantages over existing concurrent programming models, and how they work under the hood.
However, we all know that all that glitters is not gold – so you will also find out what virtual threads cannot do, when not to use them, and what pitfalls you should avoid when migrating to virtual threads.
Syntax + API News: String Templates, Unnamed Classes & More
15:00 - 16:00
Michael Inden
This talk covers several interesting syntax and API innovations in the brand-new Java 21. We will cover the following JEPs:
• JEP 430: String Templates
To format strings containing texts and variable components, there are different variants in Java, starting from the simple concatenation with + up to the formatted formatting. String templates supplement the previous variants by an elegant possibility of specifying expressions, which are evaluated by a particular template processor at runtime and integrated into the string suitably.
• JEP 431: Sequenced Collections
Java’s Collection API is one of JDK’s oldest and most well-designed APIs and contains three major types: list, set, and map. What is missing is something like an ordered sequence of elements. To solve this now, «Sequenced Collections» represent a collection whose elements have a defined encounter order.
• JEP 443: Unnamed Patterns and Variables
When using record patterns, one sometimes finds that some components are not of interest during the evaluation, such as the street name of an address. Something similar is known from lambdas when not all variables on the left side are used on the right side in the expression. Also, when handling exceptions, sometimes the exception variable is not accessed. In all these cases, it would be conceptually unnecessary to name some variables explicitly, often resulting in one-letter name abbreviations. It would be better to be able to label them specifically. This JEP addresses this.
• JEP 445: Unnamed Classes and Instance Main Methods
Maybe learning Java was a while ago for you. If you want to learn or teach Java as/to novice programmers, you realize how difficult it is to get started. This JEP tries to make it easier to get started with Java and to make it as comfortable as possible for smaller experiments, especially in combination with Direct Compilation.
For ease of comprehension, notes are also provided on support for build tools and IDEs, or running on the console, as well as the Java Almanac.
Concurrency Made Easy: Structured Concurrency & Scoped Values in Action
16:00 - 17:00
Sven Woltmann
Together with the final release of virtual threads, Java 21 brings us the first preview releases of structured concurrency and scoped values – two more features from Project Loom that will significantly simplify writing concurrent programs.
In part one of this talk, you will learn, through an example, how to use structured concurrency to break down a task into multiple concurrent, potentially blocking subtasks, how to merge their results, and how to cancel subtasks whose results are no longer needed – all that with just a few simple lines of code.
In part two, you’ll discover how to use scoped values to exchange immutable data between various parts of a program – without the need for method arguments or thread-local variables.
Pattern Matching in Java
17:00 - 18:00
Falk Sippach
Pattern matching is a mechanism to check values against patterns. If a match is found, these values can then be broken down into their constituent parts and thus easily and safely processed further. This concept, which is primarily known from functional programming languages, is thus a very powerful and flexible alternative to classic switch statements or if/else statement cascades. For several years now, the JDK incubator project Amber has been working on the introduction of pattern matching in Java. Some of the implementations have now found their way into the OpenJDK. They promise shorter and more comprehensible source code, which can also be checked for correctness by the compiler. It is easier to read and can therefore be easily maintained and extended.
Accompanied by code examples we will take a closer look at the actual state of pattern matching in Java. You will get to know the new features like Switch Expression, Type/Record Patterns, Sealed Classes as well as Pattern Matching for switch in more detail and learn where they can be usefully applied. Afterward, we will take a look at future alternative pattern types.
Register Now and Join Our Event
Already have Fullstack?
You’re all set! Grab a pen and paper and simply check back in at the time of the event to participate. Want to see more Fullstack Live Events? Browse through the complete list of events here.
No Fullstack yet?
Fullstack Experience members have free access to all Live Events – past, present and future. In addition, Fullstack members also have access to the recording of all live events for three months.
Register your Fullstack Experience now and benefit from this and future groundbreaking Fullstack Live Events.
Is Your Team Larger Than 16 Employees?
We can help you master digitalization by giving your team unlimited and groundbreaking software know-how including interactive online workshops, thousands of articles, infographics, topic deep dives and much more!
Get In Touch and we can guide you through the best fit for your team!

Fullstack at a Glance
Basic
Fullstack

Fullstack Teams
Fullstack Read
Fullstack Live-Events
Fullstack Tutorials
Add-Ons: up to 25 % Sale on Conferences & Training Events*
Add-Ons: up to 25 % Sale on Akademy & FLEX Camps*
Features
Notes
Collections
AI-Search AskFrank
Curated Theme Highlights
Live Chat
Direct Chat
Discounts on Conferences, Training & Akademy Events*
6 Month Access to Video Recordings of Your Conferences
Certificates of Participation in Conferences, Training & Academy Events*
Access to Slides & Presentations of Conferences Attended
No Administrative Overhead
Account Manager