查看原文
其他

Java 18 都要来了,你不会还在用Java 8吧?

SpringForAll 2022-07-05

作者 | 罗奇奇

来源 | OSC开源社区(ID:oschina2013)

Java 开发工具包 (JDK) 18 将于 2022 年 3 月 22 日发布。新版本的标准 Java 将有九个新特性,该特性集已于 12 月 9 日冻结,进入 Rampdown 第一阶段。

值得注意的是:JDK 17 是一个长期支持 (LTS) 版本,将获得 Oracle 至少八年的支持,但 JDK 18 将是一个短期功能版本,只支持六个月。可以在 java.net(https://jdk.java.net/18/) 上找到适用于 Linux、Windows 和 MacOS 的 JDK 18 的尝鲜版本。

JDK 18 新功能一览:

  • JEP 400:指定 UTF-8 作为标准 Java API 的默认字符集。通过此更改,依赖于默认字符集的 API 将在所有实现、操作系统、区域设置和配置中保持一致。
  • JEP 408:引入一个简单的 Web 服务器。提供一个命令行工具,来启动一个只提供静态文件的最小网络服务器,它没有 CGI 或类似 servlet 的功能可用。该工具用于原型设计、临时编码和测试目的,尤其是在教学环境中。
  • JEP 413:支持在 Java API 文档中加入代码片段。 为 JavaDoc 的 Standard Doclet 引入一个 @snippet 标记,以简化 API 文档中嵌入示例源代码的难度。
  • JEP 416 :用方法句柄重新实现核心反射。 在 java.lang.invoke 的方法句柄之上,重构 java.lang.reflect 的方法、构造函数和字段,使用方法句柄处理反射的底层机制将减少 java.lang.reflect 和 java.lang.invoke 两者的 API 维护和开发成本。
  • JEP 417:Vector API(第三孵化器)。 引入一个 API 来表达向量计算,这些计算在运行时可以编译为支持的 CPU 架构上的最佳向量指令,从而实现优于等效标量计算的性能。
  • 如果您正在学习Spring Boot,那么推荐一个连载多年还在继续更新的免费教程:http://blog.didispace.com/spring-boot-learning-2x/

  • JEP 418:互联网地址解析 SPI。定义用于主机名和地址解析的服务提供者接口 (SPI),以便java.net.InetAddress可以使用平台内置解析器以外的解析器。
  • JEP 419:外部函数和内存 API(第二孵化器)。 引入了一个新 API, Java 程序可以通过它与 Java 运行时之外的代码和数据进行互操作。通过有效地调用外部函数(即 JVM 外的代码),并安全地访问外部内存(即不由 JVM 管理的内存),外部函数和内存 API 使 Java 程序能够调用本机库并处理本机数据,而不具有 JNI 的脆弱性和危险。
  • JEP 420:switch 模式匹配表达式。 使用 switch 表达式和语句的模式匹配以及对模式语言的扩展来增强 Java 编程语言。将模式匹配扩展到 switch 允许针对多个模式测试表达式,每个模式都有特定的操作,可以简洁安全地表达复杂的面向数据的查询。
  • JEP 421:弃用 Finalization 功能。Java 1.0 中引入的 Finalization 旨在帮助避免资源泄漏问题,然而这个功能存在延迟不可预测、行为不受约束,以及线程无法指定等缺陷,导致其安全性、性能、可靠性和可维护性方面都存在问题,因此将其弃用,用户可选择迁移到其他资源管理技术,例如try-with-resources 语句和清洁器。

2022 年 1 月 20 日会进入 Rampdown 第二阶段,初始和最终候选(RC)版本将分别于明年 2 月 10 日和 2 月 24 日发布,稳定版 JDK 18 将在 2022 年 3 月 22 日发布,可在 JDK 公告页中查看最新消息。

JDK 公告页:https://openjdk.java.net/projects/jdk/18/

加入我们的高质量技术交流群:与优秀的人在一起,自己也会优秀起来!

你现在在用 Java 的哪个版本呢?评论区等你!

往期阅读

Spring Native 0.11.1 发布
年度最受欢迎的开源CHROME插件,官方认可的最受欢迎!
阿里云因发现Log4j2核弹级漏洞但未及时上报,被工信部处罚...

点击卡片关注我,Spring的一切及时送达

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存