Java 20
约 1 分钟阅读
- Released: 2023-03-21
- JDK 20 Project链接openjdk.org/projects/jdk/20Released: 2023-03-21 · JDK 20 Project · 延续 Java 19 的预览和孵化能力,Scoped Values 首次孵化。 · 主要是预览/孵化迭代,适合跟踪 Loom/Panama API 变化。 · | JEP | 状态 | 分类 | 标题 | 中文描述 |笔记:Java 20
核心总结
- 延续 Java 19 的预览和孵化能力,Scoped Values 首次孵化。
升级关注
- 主要是预览/孵化迭代,适合跟踪 Loom/Panama API 变化。
示例
Scoped Values Incubator
// javac --enable-preview --release 20 --add-modules jdk.incubator.concurrent Demo.java
// API 在后续版本有变化,此处只表达“绑定一段作用域内的值”的用途。Virtual Threads Second Preview
// javac --enable-preview --release 20 Demo.java
Thread.startVirtualThread(() -> System.out.println("virtual"));JEPs
| JEP | 状态 | 分类 | 标题 | 中文描述 |
|---|---|---|---|---|
| JEP 429 | 孵化 | 并发/Loom | Scoped Values (Incubator) | Scoped Values 首次孵化,作为 ThreadLocal 的结构化替代。 |
| JEP 432 | 第二次预览 | 语言 | Record Patterns (Second Preview) | Record 模式第二次预览。 |
| JEP 433 | 第四次预览 | 语言 | Pattern Matching for switch (Fourth Preview) | switch 模式匹配第四次预览。 |
| JEP 434 | 第二次预览 | Panama/向量/原生 | Foreign Function & Memory API (Second Preview) | FFM API 第二次预览。 |
| JEP 436 | 第二次预览 | 并发/Loom | Virtual Threads (Second Preview) | 虚拟线程第二次预览。 |
| JEP 437 | 第二次孵化 | 并发/Loom | Structured Concurrency (Second Incubator) | 结构化并发第二次孵化。 |
| JEP 438 | 第五次孵化 | Panama/向量/原生 | Vector API (Fifth Incubator) | Vector API 第五次孵化。 |
References
- JDK 20 Project链接openjdk.org/projects/jdk/20Released: 2023-03-21 · JDK 20 Project · 延续 Java 19 的预览和孵化能力,Scoped Values 首次孵化。 · 主要是预览/孵化迭代,适合跟踪 Loom/Panama API 变化。 · | JEP | 状态 | 分类 | 标题 | 中文描述 |笔记:Java 20
- Java 20 Release Notes
关联信息
反向链接、本文链接的其他页面和外部资料。
反向链接
- Java 版本笔记 · Java 20
自 Java 9 · 每 6 个月一个版本 · 每 2 年一个 LTS - 每 4 个版本 · Java 11 - Java 17 隔了 3 年, 之后为每隔两年 · Java JEP 与版本变化 · 参考 · Java version history
- Java JEP 与版本变化笔记 · 20
资料来源以 OpenJDK JDK Project 页面和 JEP 页面为主。Java 5–7 主要按 JSR/项目整理;JDK 8 起按代表性 JEP 整理;JDK 10 起列出该版本项目页 Features 中的全部 JEP。 · | 状态 | 含义 | 使用建议 |
参考资料
其他外链9 条
- openjdk.org/projects/jdk/20openjdk.org/projects/jdk/20
- jdk.java.net/20/release-notesjdk.java.net/20/release-notes
- openjdk.org/jeps/429openjdk.org/jeps/429
- openjdk.org/jeps/432openjdk.org/jeps/432
- openjdk.org/jeps/433openjdk.org/jeps/433
- openjdk.org/jeps/434openjdk.org/jeps/434
- openjdk.org/jeps/436openjdk.org/jeps/436
- openjdk.org/jeps/437openjdk.org/jeps/437
- openjdk.org/jeps/438openjdk.org/jeps/438