跳至正文
Wener Notes

Java 26

约 2 分钟阅读
  • Released: 2026-03-17

核心总结

  • Java 26 是非 LTS 版本,重点在语言预览继续推进、HTTP/3、AOT 对象缓存、G1 吞吐优化,以及 Applet API 最终移除。

升级关注

  • Applet API 已移除;仍引用 java.applet / javax.swing.JApplet 的旧代码需要清理。
  • final 字段语义开始进入收紧路线,反射/Unsafe/序列化框架对 final 字段的写入能力需要关注后续兼容性。
  • HTTP Client 引入 HTTP/3 支持,可评估对高延迟/移动网络场景的收益。
  • Structured Concurrency、Lazy Constants、Primitive Types in Patterns 仍是预览;Vector API 仍是孵化。

示例

HTTP/3 for HTTP Client

java
import java.net.URI;
import java.net.http.*;

var client = HttpClient.newBuilder()
  .version(HttpClient.Version.HTTP_3)
  .build();
var request = HttpRequest.newBuilder(URI.create("https://example.com/")).build();
var response = client.send(request, HttpResponse.BodyHandlers.discarding());

Primitive Types in Patterns Preview

java
// javac --enable-preview --release 26 Demo.java
static String render(Object value) {
  return switch (value) {
    case int i -> "int " + i;
    case long l -> "long " + l;
    default -> "other";
  };
}

JEPs

JEP状态分类标题中文描述
JEP 500迁移预告语言Prepare to Make Final Mean Final准备强化 final 字段语义,减少深反射等机制对 final 字段的随意修改。
JEP 504移除/禁用库/APIRemove the Applet API移除 Applet API,完成长期废弃路线。
JEP 516正式GC/RuntimeAhead-of-Time Object Caching with Any GCAOT 对象缓存扩展到任意 GC,改善启动与预热。
JEP 517正式库/APIHTTP/3 for the HTTP Client APIjava.net.http HTTP Client 支持 HTTP/3。
JEP 522正式GC/RuntimeG1 GC: Improve Throughput by Reducing Synchronization通过减少同步开销提升 G1 吞吐。
JEP 524第二次预览安全/加密PEM Encodings of Cryptographic Objects (Second Preview)PEM 编码加密对象 API 第二次预览。
JEP 525第六次预览并发/LoomStructured Concurrency (Sixth Preview)结构化并发第六次预览。
JEP 526第二次预览语言Lazy Constants (Second Preview)懒常量第二次预览,用于延迟计算并稳定发布常量值。
JEP 529第十一次孵化Panama/向量/原生Vector API (Eleventh Incubator)Vector API 第十一次孵化。
JEP 530第四次预览语言Primitive Types in Patterns, instanceof, and switch (Fourth Preview)原始类型模式、instanceof、switch 第四次预览。

References

  • Java 26 Release Notes

关联信息

反向链接、本文链接的其他页面和外部资料。

反向链接

  • Java 版本
    笔记 · Java 26

    自 Java 9 · 每 6 个月一个版本 · 每 2 年一个 LTS - 每 4 个版本 · Java 11 - Java 17 隔了 3 年, 之后为每隔两年 · Java JEP 与版本变化 · 参考 · Java version history

  • Java JEP 与版本变化
    笔记 · 26

    资料来源以 OpenJDK JDK Project 页面和 JEP 页面为主。Java 5–7 主要按 JSR/项目整理;JDK 8 起按代表性 JEP 整理;JDK 10 起列出该版本项目页 Features 中的全部 JEP。 · | 状态 | 含义 | 使用建议 |

参考资料

其他外链12 条
最近更新commit 25ad4d4编辑