尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Java 26发布,彻底移除Java Applet API!

Java 26发布,彻底移除Java Applet API! 编译 | 苏宓出品 | CSDNIDCSDNnews每六个月一更的 Java如今来到了 Java 26 版本。本次 Java 26 是一个短期版本官方提供六个月的支持。主要新特性概览JDK 26 官方包含 10 项 Java Enhancement ProposalJEP功能具体包括1. 模式匹配中的原始类型、instanceof 与 switch第四次预览这一功能旨在增强模式匹配的表达能力允许在任何模式上下文中使用原始类型如 int, double 等。扩展 instanceof 和 switch 以支持所有原始类型。这是第四次预览功能此前在 JDK 23、24、25 中也已提供预览。目标包括支持统一的数据探索让所有类型都能使用类型模式。将类型模式与 instanceof 对齐并实现安全类型转换。允许模式匹配在嵌套模式和顶层模式中使用原始类型。提供简单易用的语法避免因不安全类型转换丢失信息。扩展 switch 功能可处理任意原始类型值。第四次预览的改进包括无条件精确性定义增强以及 switch 构造中更严格的支配性检查帮助编译器发现更多潜在错误。对于 AI 场景这使得 AI 与业务逻辑的集成更简单。2. AOT 对象缓存HotSpot JVM 通过 AOT 对象缓存可以提升启动和预热速度适用于包括低延迟 ZGC 在内的任意垃圾回收器。原理是将 Java 对象以中立、与垃圾回收器无关的格式顺序加载到内存而不是映射到 GC 专用格式。此功能的目标包括使所有垃圾回收器与 Project Leyden 引入的 AOT 缓存兼容顺畅。将 AOT 缓存与 GC 实现细节解耦。保证使用 AOT 缓存不会显著增加启动时间。对于 AI 应用这意味着任何 GC 都可以通过 AOT 缓存快速启动加快模型加载和计算准备时间。3. Vector API第十一轮孵化JDK 26 引入了 Vector API 第十一轮孵化版本提供了一个用于表达向量计算的 API能够在支持的 CPU 上可靠地编译成最优向量指令从而实现比等效标量计算更高的性能。这个孵化中的 Vector API 最早出现在 JDK 162021 年 3 月发布设计目标是语法清晰简洁、平台无关、在 x64 与 AArch64 CPU 上具有可靠性能并能在不支持向量指令的平台上优雅降级。Vector API 的长期目标是利用 Project Valhalla 对 Java 对象模型的增强使得 Java 在处理大规模计算和 AI 场景时性能进一步提升。4. 惰性常量第二轮预览JDK 26 还带来了惰性常量Lazy ConstantsAPI 的新预览此前通过 JDK 25 的 stable values 功能已提供首次预览。惰性常量是持有不可变数据的对象在 JVM 内部被视为真正的常量从而可以享受与声明 final 字段相同的性能优化。与 final 字段相比惰性常量提供了更灵活的初始化时机同时在 AI 应用中有利于高效的数据共享。5. PEM隐私增强邮件编码的加密对象第二轮预览PEM隐私增强邮件编码 API 的第二次预览允许将表示加密密钥、证书以及证书吊销列表的对象编码为 PEM 格式并从该格式解码回对象。第二次预览对 API 做了若干改进包括将 PEMRecord 类重命名为 PEM新增了 decode() 方法以返回解码后的 Base64 内容同时将 EncryptedPrivateKeyInfo 类的 encryptKey 方法改名为 encrypt并支持 DEREncodable 对象而非仅 PrivateKey 对象从而可以加密 KeyPair 和 PKCS8EncodedKeySpec 对象。6. 结构化并发第六次预览结构化并发 API 通过将不同线程中运行的相关任务组视作单个工作单元简化了并发编程。它优化了错误处理和任务取消流程提高了可靠性和可观察性。这一特性鼓励一种更安全的并发编程风格能够避免常见的线程泄漏、取消延迟等问题并提升 AI 并发计算的表现。7. 深度反射修改 final 字段的使用警告JDK 26 还引入了对深度反射修改 final 字段的警告为未来版本做好准备使得 final 字段默认不可修改从而保证程序完整性提高安全性和性能。开发者可以通过有选择地启用修改权限在必要时绕过当前警告和未来限制。8. G1 垃圾回收器同步优化以提升吞吐量在垃圾回收方面G1 GC 的优化提案旨在减少应用线程与 GC 线程间的同步从而提升吞吐量。目标包括降低 G1 GC 的同步开销、减少写屏障插入代码大小并保持 G1 的整体架构不变。G1 作为 HotSpot JVM 默认的垃圾回收器设计上兼顾延迟和吞吐但在某些场景下相比以吞吐为导向的 Parallel 和 Serial GC其性能会有所折中。G1 GC 的改进意味着应用线程与 GC 线程共享 CPU 并协调执行这种同步既影响吞吐量也可能增加延迟但总体上优化了并发处理和 GC 暂停时间。9. Client API 支持 HTTP/3HTTP/3 支持使 Java 库和应用能够以最少代码修改与 HTTP/3 服务器交互。JDK 26 更新了 HTTP Client API使其能够发送和接收 HTTP/3 请求和响应。开发者可以选择使用 HTTP/3而无需改变默认协议版本HTTP/2。HTTP/3 是 Web 通信协议的重大版本基于 IETF QUICQuick UDP Internet Connections协议支持流控、低延迟连接建立、网络路径迁移和增强安全性。10. 移除 Java Applet APIJDK 26 还正式移除了 Java Applet API该 API 在 JDK 172021 年已标记为弃用。由于最新的 JDK 版本和现代浏览器均不再支持 Applet这一 API 已毫无实际用途因此从 JDK 26 开始被彻底移除。除了这些主要 JEP 功能JDK 26 还包含一些小型增强功能例如混合公钥加密、在使用 jlink 工具交叉链接时更严格的版本检查、扩展 HTTP 客户端请求超时以覆盖响应体以及虚拟线程在等待其他线程执行类初始化器时自动从承载线程解绑。这些改进虽然规模较小但进一步完善了 Java 的整体功能和性能。目前JDK 26 可以从 Oracle 官网下载更多特性细节可查阅https://jdk.java.net/26/来源https://www.infoworld.com/article/4050993/jdk-26-the-new-features-in-java-26.html推荐阅读
返回列表