JDK JDK 学习手册8 → 27 · JDK 专用学习站
JDK 16 · 2021-03-16

JDK 16:record 转正

record 与 instanceof 模式匹配正式转正,sealed 进入第二次预览;JDK 内部默认强封装,Vector API 开始孵化。

发布 2021-03-16 class 文件版本 60 状态 版本档案 代表特性 6 项
17官方 JEP 数
4正式特性
2预览 / 孵化
0移除 / 弃用

代表特性HIGHLIGHTS

这些是这一版最值得记住的变化。状态标签区分「正式 / 预览 / 孵化 / 移除」——预览不等于稳定,迁移时要特别确认。

正式

record 转正

数据类写法大幅简化。

JEP 394

正式

instanceof 模式匹配转正

类型判断 + 绑定一步完成。

JEP 395

预览

Sealed Classes(第二次预览)

为模式匹配穷尽性提供类型封闭性。

JEP 397

正式

默认强封装 JDK 内部

反射访问内部 API 默认被拒绝,可用 --add-opens 放开。

JEP 396

孵化

Vector API(孵化)

让 JIT 把向量计算映射到 SIMD 指令。

JEP 338

正式

弹性 Metaspace

元空间内存按需归还,降低占用。

JEP 387

全部 JEP17

数据来自 OpenJDK 官方 Features 表。中文名称仅为主要特性的人工标注。

JEP标题状态来源
JEP 338Vector API (Incubator)
Vector API(孵化)
孵化官方 →
JEP 347Enable C++14 Language Features—官方 →
JEP 357Migrate from Mercurial to Git—官方 →
JEP 369Migrate to GitHub—官方 →
JEP 376ZGC: Concurrent Thread-Stack Processing—官方 →
JEP 380Unix-Domain Socket Channels—官方 →
JEP 386Alpine Linux Port—官方 →
JEP 387Elastic Metaspace
弹性 Metaspace
正式官方 →
JEP 388Windows/AArch64 Port—官方 →
JEP 389Foreign Linker API (Incubator)—官方 →
JEP 390Warnings for Value-Based Classes—官方 →
JEP 392Packaging Tool—官方 →
JEP 393Foreign-Memory Access API (Third Incubator)—官方 →
JEP 394Pattern Matching for instanceof
record 转正
正式官方 →
JEP 395Records
instanceof 模式匹配转正
正式官方 →
JEP 396Strongly Encapsulate JDK Internals by Default
默认强封装 JDK 内部
正式官方 →
JEP 397Sealed Classes (Second Preview)
Sealed Classes(第二次预览)
预览官方 →

这一版的故事STORY

Java 16 把 record 和 instanceof 模式匹配送进正式语言,同时默认强封装 JDK 内部——这意味着依赖内部 API 的旧代码需要显式 --add-opens。

怎么用这一页:先读故事建立坐标,再扫一遍代表特性。如果你正在用这个版本,重点看「移除与弃用」;如果你在选型或面试,重点记住 2–3 个代表特性及其版本边界。

JDK 学习手册 · JDK / Java 专用学习站 · 纯静态 · 双击 index.html 即可使用

本站专注 JDK 版本演进与 Java 教学,非 Oracle / OpenJDK 官方站点。版本数据来自 OpenJDK 官方 Features 表;课程示例已在对应本机 JDK 实测。构建日期 2026-11-12。