Daniel Strmečki

"What´s New for Developers Moving from Java 11 to 17?"

Stop writing boilerplate. See how Java 17's records, pattern matching, and text blocks can immediately improve your code's readability and safety.

"What´s New for Developers Moving from Java 11 to 17?"
#1about 4 minutes

Understanding the new Java LTS release cadence and licensing

Java's long-term support (LTS) release cycle has shifted from every three years to every two years, and Oracle JDK 17 introduces a new no-cost license for commercial use.

#2about 3 minutes

Using text blocks for more readable multiline strings

Text blocks simplify creating multiline strings, such as formatted HTML or JSON, by using triple quotes to avoid concatenation and escape characters.

#3about 4 minutes

Simplifying logic with enhanced switch expressions

The enhanced switch expression uses arrow syntax to return values, supports multiple case labels, and eliminates the need for `break` statements, preventing fall-through errors.

#4about 3 minutes

Reducing boilerplate with pattern matching for `instanceof`

Pattern matching for the `instanceof` operator allows you to check an object's type and cast it to a new variable in a single line, simplifying type-checking logic.

#5about 4 minutes

Advanced case selection with pattern matching for switch

The preview feature of pattern matching for switch statements enables matching cases by type and adding conditional guards, making switch logic more powerful and expressive.

#6about 3 minutes

Creating immutable data classes easily with records

The `record` keyword provides a concise way to create immutable data carrier classes by automatically generating constructors, getters, `equals()`, `hashCode()`, and `toString()` methods.

#7about 4 minutes

Controlling class inheritance with sealed classes and interfaces

Sealed classes and interfaces restrict which other classes or interfaces may extend or implement them, providing finer-grained control over your class hierarchy.

#8about 2 minutes

A simpler way to collect streams into a list

The new `Stream.toList()` method offers a more concise alternative to `collect(Collectors.toList())` for gathering stream elements into an unmodifiable list.

#9about 2 minutes

Understanding the new random number generator API

Java 17 introduces a new, more extensible API for random number generation centered around the `RandomGenerator` interface, providing a unified way to access various algorithms.

#10about 1 minute

Debugging faster with helpful NullPointerExceptions

NullPointerExceptions now provide detailed messages that specify which variable was null, significantly speeding up the debugging process.

#11about 2 minutes

Summary of changes and considerations for upgrading

The updates from Java 11 to 17 are mostly handy, incremental improvements rather than groundbreaking changes, making the upgrade beneficial but dependent on project constraints.

#12about 14 minutes

Q&A on upgrading, records, and framework compatibility

The Q&A session addresses when to upgrade from non-LTS versions, potential blockers like framework compatibility, and specific questions about records versus Lombok.

Related jobs
Jobs that call for the skills explored in this talk.

d

Saby Company
Delebio, Italy

Junior

asasd

Expire

Remote
Junior

Featured Partners

Related Articles

View all articles
BB
Benedikt Bischof
Using Java 17 latest features in real world projects
Welcome to this issue of the WeAreDevelopers Live Talk series. This article recaps an interesting talk by Ron Veen who introduced the audience to some of the most interesting features that got added to the Java language.About the speaker:Ron is a hig...
Using Java 17 latest features in real world projects
BB
Benedikt Bischof
Java Basics
In 1991,James Gosling invented a high-level, general-purpose, object-oriented andsecure programming language and called it OAK (after a tree in front of hiswindow). And four years later, in 1995, it was renamed after one of the GreaterSunda Islands: ...
Java Basics
CH
Chris Heilmann
WeAreDevelopers LIVE days are changing - get ready to take part
Starting with this week's Web Dev Day edition of WeAreDevelopers LIVE Days, we changed the the way we run these online conferences. The main differences are:Shorter talks (half an hour tops)More interaction in Q&AA tips and tricks "Did you know" sect...
WeAreDevelopers LIVE days are changing - get ready to take part
LM
Luis Minvielle
Top 10 Java Libraries
Java has been around for so long, in part, because it has a large ecosystem. While all of Java's core components are exceptionally robust, the abundance of Java libraries is the one that stands out the most. So… what are the must-know Java libraries ...
Top 10 Java Libraries

From learning to earning

Jobs that call for the skills explored in this talk.