Modern Java: This is not your father's Java anymore
summary
Covers concrete language changes from JDK11→17 and a JDK19 preview: records generate constructor/getters/equals/hashCode/toString so records are final immutable data carriers that avoid reflective deserialization issues; text blocks use triple quotes with automatic indentation trimming; switches become value-returning, exhaustive expressions that use yield for blocks and switch is now an exhaustive expression with yield; sealed types use permits to restrict subclasses; pattern matching adds type and record deconstruction (guarded patterns, when). JDK19 shows virtual threads with huge scalability (claim: millions on a laptop) and a newVirtualThreadPerTaskExecutor, preview only and watch for synchronized/ThreadLocal caveats.
AI-written summary · about
chapters (11)
- 0:00Introduction and Java's evolution
- 3:15Six-month release cycle and LTS changes
- 5:03Why upgrade to Java 17
- 6:30Project Amber and modern Java features
- 8:21Switch expressions explained
- 12:33Text blocks for cleaner code
- 17:30Records as immutable data structures
- 25:21Sealed classes and inheritance control
- 30:46Pattern matching in Java
- 42:20Virtual threads introduction
- 48:43Q&A session








