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

Posted androidstarjack

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 18都要来了,你不会还在用Java 8 吧?相关的知识,希望对你有一定的参考价值。

点击上方“终端研发部”,选择“置顶公众号”

关键时刻,第一时间送达!

文 | 罗奇奇

出品 | 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 架构上的最佳向量指令,从而实现优于等效标量计算的性能。

  • 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 的哪个版本呢?评论区等你!

今日好文推荐

GitHub上非常实用的40个开源JAVA项目

XShell收费太贵?快试试开源的NuShell,好用!

GET 和 POST请求的本质区别是什么?看完觉得自己太无知了...

MyBatis批量插入数据你还在用foreach?你们的服务器没崩?

点个在看少个 bug 👇

以上是关于Java 18都要来了,你不会还在用Java 8 吧?的主要内容,如果未能解决你的问题,请参考以下文章

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

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

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

Java 12 来了, 你还在用 Java 8 吗?

Java 14 都要来了,为什么还有这么多人固守Java8?

Java 14 令人期待的 5 大新特性,打包工具终于要来了