advanced~3h

Java 18-20: Maturing Toward Java 21

Three transitional releases that fixed a decades-old default encoding inconsistency and ran the final preview rounds of virtual threads and pattern matching for switch -- the last stretch of groundwork before Java 21 locked everything in as a long-term-support baseline.

Learning objectives

  • Explain the UTF-8-by-default change in Java 18 and what cross-platform bug class it eliminates
  • Describe what a feature preview round across consecutive releases (19 and 20) signals about its design stability
  • Recognize virtual threads and structured concurrency as previewing here, and know where to find their full depth in this platform
  • Read the preview syntax for pattern matching for switch as it stood in Java 20, ahead of its Java 21 finalization
  • Explain why Oracle chooses to preview a feature across multiple releases instead of finalizing it immediately

This is a Pro chapter

Sign in, then upgrade to Pro or Power to unlock this and the full Core Java Mastery library.

Java 18-20: Maturing Toward Java 21

Next Step

Continue to Java 21: The Modern LTS Baseline →← Back to all Java Version Evolution chapters