JLS 16 favicon
All About JLS 16
JLS 16 • 2021 • Records finalized
Records finalData carriersConcise declarations

All About JLS 16

JLS 16 formalized records, making a once-preview feature part of the stable language and sharpening Java's support for immutable data carriers.

Specification edition

JLS 16

JLS 16 formalized records, making a once-preview feature part of the stable language and sharpening Java's support for immutable data carriers.

Records finalData carriersConcise declarations
What shifted

How the specification changed

Locked in the source-level rules for compact, transparent data classes and their generated members.

It changed how developers think about DTO-style and value-oriented types in Java.

Reading note

Why this edition matters

This is a major spec milestone even if it looks small compared with JLS 3 or JLS 8.

Start here when you want the specification view of records beyond blog-level summaries.

Related pages

Continue through the language-spec path