The Cool Thing about Cool Things in Java 16 & 17 LTS
summary
Practical tour of Java 16 and 17 features with concrete claims and examples: records reduce boilerplate for immutable data carriers (canonical and compact constructors shown, local records used for stream projections), pattern matching for instanceof and switch replaces casts in equality and type-dispatch code, and the foreign-memory and foreign-linker APIs (incubating) provide safe off‑heap access for large files with JNI‑comparable performance. Real work: a billing aggregation moved to JDK17 using Stream.toList and reports smaller runtime images, faster startup, and simpler native packaging via jpackage.
AI-written summary · about
chapters (20)
- 0:00Intro
- 0:29The Cool Thing about Cool Things in Java 16 & 17 LTS
- 4:50What is the Relation between JDK 16 and 17 LTS?
- 7:28JEP 12: Preview Features
- 9:01Enabling preview features during development.
- 10:08JEP 11: Incubator Modules
- 11:41JEP 277: Enhanced Deprecatione
- 13:57JEP 395: Records
- 19:24JEP 394: Pattern Matching for instanceof
- 21:54JEP 406: Pattern Matching for switch (Preview)
- 24:56JEP 409: Sealed Classes
- 31:59JEP 390: Warnings for Value-Based Classes
- 34:55JEP 380: Unix-Domain Socket Channels
- 41:24JEP 387: Elastic Metaspace
- 43:11JEP 407: Remove RMI Activation
- 43:44JEP 398: Deprecate the Applet API for Removal
- 43:59JEP 410: Remove the Experimental AOT and JIT Compiler
- 44:21Significant Removal and Deprecation
- 46:21JEP 392: Packaging Tool
- 48:26JEP 386: Alpine Linux Port
related talks
03h 02mJava 16 & 17. What's new and noteworthy?
01h 13mJDK 16: What's Next For Java?
44mJava 17: New and Exciting!
01h 05mJava 11 to 17 - Exciting New Features
01h 11mModern Java: This is not your father's Java anymore
39mMost impacting features of newest JDKs
56mEffective Java SE 16 APIs
40mSailing Java 16
