Mastering Java 17 LIVE 7-9 February 2023
"Java After 8" Series
Oracle produces a new "feature release" of Java every six month. Teams that do not move forward with this rapid pace, run the risk of having to work with outdated technology, and are often forced to code around shortcomings that have already been solved in more modern Java.
In this course, we teach the most important new features of Java 12, 13, 14, 15, 16, and 17. It is ideal for programmers tho are currently programming Java 11, and who need to upgrade their systems, or even programmers that are using Java 17, but feel that they have not understood all the intricacies of the new versions.
We begin with language improvements, exploring how NullPointerExceptions now present us with helpful debugging information, then looking at the new features of switch expressions, text blocks, pattern matching for instanceof, records, and finally, sealed classes.
Next we investigate the performance improvements in Java 17, looking at why biased locking was disabled by default, what a value-based class is, and the two new garbage collectors: ZGC and Shenandoah.
In our last section, we look at the tools and API improvements in Java 17, such as the enhanced pseudo-random number generators, the context specific deserialization filters, and how the JVM is becoming more secure through stronger encapsulation and by deprecating the insecure security manager.
During the training, we will always get a chance to try out what we have learned in carefully thought out exercises. This will help us understand and quickly internalize what we have just learned.
We will make recordings of the sessions in case anyone misses anything or would like to revise the material at a later date. These should become available within 24 hours of each session.
Detailed Outline
Part 1: Language Improvements
- JEP 358: Helpful NullPointerExceptions
- JEP 361: Switch Expressions
- JEP 378: Text Blocks
- JEP 394: Pattern Matching for instanceof
- JEP 395: Records
- JEP 409: Sealed Classes
Part 2: Performance Improvements
- JEP 374: Deprecate and Disable Biased Locking
- JEP 377: ZGC: A Scalable Low-Latency Garbage Collector
- JEP 379: Shenandoah: A Low-Pause-Time Garbage Collector
- JEP 390: Warnings for Value-Based Classes
Part 3: Tools and API Improvements
- JEP 356: Enhanced Pseudo-Random Number Generators
- JEP 403: Strongly Encapsulate JDK Internals
- JEP 411: Deprecate the Security Manager for Removal
- JEP 415: Context-Specific Deserialization Filters
Conclusion
- Where to next
- Beyond Java 17
- The Java Specialists' Newsletter
Satisfaction Guarantee
Should you not be satisfied with the quality of the training or the delivery, we will gladly refund you 100% of the course fees. This needs to be brought to our attention within the first 2 hours of the course and a chance should be given to correct whatever you are not satisfied with. If you are still not satisfied, we will refund you 100% of the course fees and will unenroll you from the course.
Prerequisites
Students attending this course should have a good working knowledge of Java 11. Please see our Mastering Java 11 Course running in January 2023, or consider getting our Mastering Java 11 and 17 Course Bundle.
Your Instructor
Heinz Kabutz is the author of The Java Specialists’ Newsletter, a publication enjoyed by tens of thousands of Java experts in over 150 countries. He has been a Java Champion since 2005.