Skip to main content

Java 11

核心总结

  • Java 8 后第一个 LTS。HTTP Client 标准化,Java EE/CORBA 移除,Flight Recorder 开源,ZGC/Epsilon 进入实验。

升级关注

  • Java EE/CORBA 模块移除是从 Java 8 升级的最大断点之一,需要显式引入 JAXB/JAX-WS 等依赖。
  • HTTP Client、JFR、TLS 1.3 是长期可用能力。

示例

HTTP Client

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

var client = HttpClient.newHttpClient();
var request = HttpRequest.newBuilder(URI.create("https://example.com")).build();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());

直接运行单文件源码

java Hello.java

JEPs

JEP状态分类标题中文描述
JEP 181正式库/APINest-Based Access Control支持 nestmate 访问控制,嵌套类可直接访问彼此私有成员。
JEP 309正式工具/平台Dynamic Class-File ConstantsCONSTANT_Dynamic,支持动态计算类文件常量。
JEP 315正式库/APIImprove Aarch64 Intrinsics优化 AArch64 字符串、数组和数学 intrinsics。
JEP 318正式GC/RuntimeEpsilon: A No-Op Garbage Collector不回收内存的 GC,适合测试、短生命周期任务和性能基线。
JEP 320移除/禁用库/APIRemove the Java EE and CORBA Modules移除 Java EE 与 CORBA 模块和相关工具。
JEP 321正式库/APIHTTP Client (Standard)java.net.http 标准 HTTP/2 和 WebSocket 客户端。
JEP 323正式语言Local-Variable Syntax for Lambda ParametersLambda 参数允许使用 var,便于添加注解。
JEP 324正式安全/加密Key Agreement with Curve25519 and Curve448支持 X25519/X448 密钥协商。
JEP 327正式库/APIUnicode 10升级 Unicode 10。
JEP 328正式工具/平台Flight RecorderJFR 开源并进入 OpenJDK。
JEP 329正式安全/加密ChaCha20 and Poly1305 Cryptographic Algorithms支持 ChaCha20-Poly1305 加密算法。
JEP 330正式工具/平台Launch Single-File Source-Code Programsjava 可直接运行单文件源码。
JEP 331正式库/APILow-Overhead Heap Profiling低开销堆分配采样分析。
JEP 332正式安全/加密Transport Layer Security (TLS) 1.3支持 TLS 1.3。
JEP 333实验GC/RuntimeZGC: A Scalable Low-Latency Garbage Collector (Experimental)实验性 ZGC,目标大堆低延迟。
JEP 335废弃工具/平台Deprecate the Nashorn JavaScript Engine废弃 Nashorn JS 引擎。
JEP 336废弃工具/平台Deprecate the Pack200 Tools and API废弃 Pack200 工具和 API。

References