Java Language and Virtual Machine Specifications
Java SE 26
Released March 2026 as JSR 401
👁 documentation icon
The Java Language Specification, Java SE 26 Edition
HTML | PDF
Preview feature:
Primitive Types in Patterns, instanceof, and switch
👁 documentation icon
The Java Virtual Machine Specification, Java SE 26 Edition
HTML | PDF
Java SE 25
Released September 2025 as JSR 400
👁 documentation icon
The Java Language Specification, Java SE 25 Edition
HTML | PDF
Preview feature:
Primitive Types in Patterns, instanceof, and switch
👁 documentation icon
The Java Virtual Machine Specification, Java SE 25 Edition
HTML | PDF
Java SE 24
Released March 2025 as JSR 399
👁 documentation icon
The Java Language Specification, Java SE 24 Edition
HTML | PDF
Preview feature:
Flexible Constructor Bodies
Preview feature:
Module Import Declarations
Preview feature:
Primitive Types in Patterns, instanceof, and switch
Preview feature:
Simple Source Files and Instance main Methods
👁 documentation icon
The Java Virtual Machine Specification, Java SE 24 Edition
HTML | PDF
Preview feature:
Module Import Declarations
Preview feature:
Simple Source Files and Instance main Methods
Java SE 23
Released September 2024 as JSR 398
👁 documentation icon
The Java Language Specification, Java SE 23 Edition
HTML | PDF
Preview feature:
Flexible Constructor Bodies
Preview feature:
Implicitly Declared Classes and Instance main Methods
Preview feature:
Module Import Declarations
Preview feature:
Primitive Types in Patterns, instanceof, and switch
👁 documentation icon
The Java Virtual Machine Specification, Java SE 23 Edition
HTML | PDF
Preview feature:
Implicitly Declared Classes and Instance main Methods
Java SE 22
Released March 2024 as JSR 397
👁 documentation icon
The Java Language Specification, Java SE 22 Edition
HTML | PDF
Preview feature:
Implicitly Declared Classes and Instance main Methods
Preview feature:
Statements Before super(...)
Preview feature:
String Templates
👁 documentation icon
The Java Virtual Machine Specification, Java SE 22 Edition
HTML | PDF
Preview feature:
Implicitly Declared Classes and Instance main Methods
Java SE 21
Released September 2023 as JSR 396
👁 documentation icon
The Java Language Specification, Java SE 21 Edition
HTML | PDF
Preview feature:
String Templates
Preview feature:
Unnamed Classes and Instance main Methods
Preview feature:
Unnamed Patterns and Variables
👁 documentation icon
The Java Virtual Machine Specification, Java SE 21 Edition
HTML | PDF
Preview feature:
Unnamed Classes and Instance main Methods
Java SE 20
Released March 2023 as JSR 395
👁 documentation icon
The Java Language Specification, Java SE 20 Edition
HTML | PDF
Preview feature:
Pattern Matching for switch
Preview feature:
Record Patterns
👁 documentation icon
The Java Virtual Machine Specification, Java SE 20 Edition
HTML | PDF
Java SE 19
Released September 2022 as JSR 394
👁 documentation icon
The Java Language Specification, Java SE 19 Edition
HTML | PDF
Preview feature:
Pattern Matching for switch
Preview feature:
Record Patterns
👁 documentation icon
The Java Virtual Machine Specification, Java SE 19 Edition
HTML | PDF
Java SE 18
Released March 2022 as JSR 393
👁 documentation icon
The Java Language Specification, Java SE 18 Edition
HTML | PDF
Preview feature:
Pattern Matching for switch
👁 documentation icon
The Java Virtual Machine Specification, Java SE 18 Edition
HTML | PDF
Java SE 17
Released September 2021 as JSR 392
👁 documentation icon
The Java Language Specification, Java SE 17 Edition
HTML | PDF
Preview feature:
Pattern Matching for switch
👁 documentation icon
The Java Virtual Machine Specification, Java SE 17 Edition
HTML | PDF
Java SE 16
Released March 2021 as JSR 391
👁 documentation icon
The Java Language Specification, Java SE 16 Edition
HTML | PDF
Preview feature:
Sealed Classes
👁 documentation icon
The Java Virtual Machine Specification, Java SE 16 Edition
HTML | PDF
Preview feature:
Sealed Classes
Java SE 15
Released September 2020 as JSR 390
👁 documentation icon
The Java Language Specification, Java SE 15 Edition
HTML | PDF
Preview features:
Pattern matching for instanceof,
Records,
Sealed Classes
👁 documentation icon
The Java Virtual Machine Specification, Java SE 15 Edition
HTML | PDF
Preview features: Records,
Sealed Classes
Java SE 14
Released March 2020 as JSR 389
👁 documentation icon
The Java Language Specification, Java SE 14 Edition
HTML | PDF
Preview features:
Pattern matching for instanceof,
Records,
Text Blocks
👁 documentation icon
The Java Virtual Machine Specification, Java SE 14 Edition
HTML | PDF
Preview feature: Records
Java SE 13
Released September 2019 as JSR 388
👁 documentation icon
The Java Language Specification, Java SE 13 Edition
HTML | PDF
Preview features:
Switch Expressions and
Text Blocks
👁 documentation icon
The Java Virtual Machine Specification, Java SE 13 Edition
HTML | PDF
Java SE 12
Released March 2019 as JSR 386
👁 documentation icon
The Java Language Specification, Java SE 12 Edition
HTML | PDF
Preview feature: Switch Expressions
👁 documentation icon
The Java Virtual Machine Specification, Java SE 12 Edition
HTML | PDF
Java SE 11
Released September 2018 as JSR 384
👁 documentation icon
The Java Language Specification, Java SE 11 Edition
HTML | PDF
👁 documentation icon
The Java Virtual Machine Specification, Java SE 11 Edition
HTML | PDF
Java SE 10
Released March 2018 as JSR 383
👁 documentation icon
The Java Language Specification, Java SE 10 Edition
HTML | PDF
👁 documentation icon
The Java Virtual Machine Specification, Java SE 10 Edition
HTML | PDF
Java SE 9
Released September 2017 as JSR 379
👁 documentation icon
The Java Language Specification, Java SE 9 Edition
HTML | PDF
👁 documentation icon
The Java Virtual Machine Specification, Java SE 9 Edition
HTML | PDF
Java SE 8
Released March 2014 as JSR 337
👁 documentation icon
The Java Language Specification, Java SE 8 Edition
HTML | PDF
👁 documentation icon
The Java Virtual Machine Specification, Java SE 8 Edition
HTML | PDF
Java SE 7
Released July 2011 as JSR 336
👁 documentation icon
The Java Language Specification, Java SE 7 Edition
HTML | PDF
👁 documentation icon
The Java Virtual Machine Specification, Java SE 7 Edition
HTML | PDF | Update (March 2015)
Java SE 6
Released December 2006 as JSR 270
👁 documentation icon
The Java Language Specification, Third Edition
HTML | PDF
👁 documentation icon
The Java Virtual Machine Specification, Second Edition
HTML | Update (SE 5.0) | Update (SE 6) | Update (March 2015)