Daniel Strmečki
"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.
MARKT-PILOT GmbH
Stuttgart, Germany
Remote
€75-90K
Senior
Java
TypeScript
+1
Matching moments
03:31 MIN
The value of progressive enhancement and semantic HTML
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
02:33 MIN
Why you might not need JavaScript for everything
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
08:07 MIN
Exploring modern JavaScript performance and new CSS features
WeAreDevelopers LIVE – AI, Freelancing, Keeping Up with Tech and More
03:58 MIN
Making accessibility tooling actionable and encouraging
Developer Time Is Valuable - Use the Right Tools - Kilian Valkhof
02:49 MIN
Using AI to overcome challenges in systems programming
AI in the Open and in Browsers - Tarek Ziadé
03:07 MIN
Final advice for developers adapting to AI
WeAreDevelopers LIVE – AI, Freelancing, Keeping Up with Tech and More
05:17 MIN
Shifting from traditional CVs to skill-based talent management
From Data Keeper to Culture Shaper: The Evolution of HR Across Growth Stages
06:47 MIN
Solving date and time issues with the Temporal API
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
Featured Partners
Related Videos
The Cool Thing about Cool Things in Java 16 & 17 LTS
Mohamed Taman
Best of Java 15 and beyond—my favorite features
Michael Inden
Beam Me Up, Java! Unraveling the Warp-Speed Evolution: A Journey through Java LTS Versions 11 to 21
Jonathan Vila
Using Java 17 latest features in real world projects
Ron Veen
Modern Java: This is not your father's Java anymore
Ron Veen
Modern Java 25
Ron Veen
Java Sealed Classes vs. Kotlin Sealed Classes #Slideless
Lothar Schulz
Java 21: The Revolution of Virtual Threads - A Deep Dive
Christian Woerz
Related Articles
View all articles.gif?w=240&auto=compress,format)



From learning to earning
Jobs that call for the skills explored in this talk.





Contracts IT
Manchester, United Kingdom
Intermediate
API
GIT
Java
Maven
DevOps
+6




Lunatech Labs BV
Rotterdam, Netherlands
€3-4K
Intermediate
Java
Scala
Kotlin
Machine Learning