📜  JDK 17 – Java 17 中的新特性

📅  最后修改于: 2022-05-13 01:54:53.923000             🧑  作者: Mango

JDK 17 – Java 17 中的新特性

Java 17 LTS 是Java SE 平台的最新长期支持版本。根据 Oracle 免费条款和条件许可,JDK 17 二进制文件可以在生产中免费使用,也可以免费重新分发,LTS 代表长期支持。它于2021年9月15日发布。

JDK-17---Java-17中的新特性

你有没有想过这意味着什么?

没有单调的心态和频繁的发布,当人们熟悉并理解操作时。基本上,JDK17 的 Open LTS 版本现已发布,它由开发工具、一组库、一个Java虚拟机和其他文件组成。每次发布时,我们都会看到新功能,同时检查其中一些是否被更改或删除。让我们讨论开放 LTS 版本的演变,否则直接切换到安装部分或更新到它。

Open LTS Java版本的演变

还记得过去,我们等待新的Java版本,例如 2006 年到 2012 年的Java 6,2013 年的Java 7,然后是 2014 年的Java 8,其中引入了最流行的概念 lambda 流和流。直到现在都很好,因为新版本可以解释为Java正在成为 IT 行业的热门产品。现在坚持下去,我们会在很短的时间间隔内看到新的Java版本,例如到 2017 年我们有Java 9,到 2018 年我们有Java 10,同年我们确实看到了Java 11。但是这一次Java在行业中有着更深的根基大多数公司选择Java作为他们的主要开发语言,对员工的技能要求也很高。

众所周知,这种编程语言是由Oracle 系统拥有、设计和更新的,所以这家公司会大规模扩张,2018 年之后,我们可以绘制出每年肯定会推出新版本的模式我们也会在 2019 年看到Java 12、 Java 13。到 2020 年,我们看到新的Java LTS 发布周期是每 6 个月之后, Java 14 和Java 15 也会在 2020 年发布。现在在现在去年,我们已经将 Java1 6 视为最新的 LTS,但与往常一样,随着快速扩展,我们应该会看到一个新的 LTS Java17,它于 2021 年 9 月 15 日推出,现在回到最近。

JDK17 中引入的特性

是的,每个人都为这个版本的重大更新而疯狂,以转换工作流程,但开发人员应该感到失望,因为没有像我们从通常称为 JEPS 的 JDK 增强提案中看到的那样大的发布更新版本检查,如下所示:

由此,我们认为此版本中没有显着的标记更改,但仍在深入了解它们,为此我们将它们分为 4 类内容,如下所示:

  1. 不错的开发人员类型的东西
  2. 特定的开发人员类型的东西
  3. 跟上苹果的各种东西
  4. 清理各种东西

类别 1:优秀的开发人员

1.1 交换机的模式匹配:

它通过允许模式出现在 case 标签中来允许模式和语句,从而扩展了 switch 表达式和语句的表达能力和适用性。它还允许在需要时放松转换的历史无效敌意。

引入了两种新模式,如下所示:

  • 保护模式:使用模式 && 布尔表达式进一步细化
  • 带括号的模式

1.2密封类:

使用密封类和接口增强Java编程语言。密封类和接口限制哪些其他类或接口可以扩展或实现它们。

句法:

public abstract sealed class Animal
permits Dog, Cat, Rabbit {...}

类别 2:特定开发人员

2.1恢复 Always-Strict 浮点语义:

它使浮点运算始终严格。

2.2增强型伪随机数生成器:

它为伪随机数生成器提供了新的接口类型和实现,以便更轻松地使用各种 PRNG 算法并更好地支持基于流的操作。

2.3强封装的JDK内部:

它强有力地封装了 JDK 的所有非关键内部元素

2.4 外部函数和内存API(孵化器):

它引入了一个 API, Java程序可以通过它在Java运行时之外解释代码和数据。

2.5 Vector API(二次孵化器):

它引入了一个 API 来表达向量计算,这些计算在运行时可靠地编译为最佳向量指令。

2.6上下文特定的反序列化过滤器:

它允许应用程序配置特定于上下文和动态选择的反序列化过滤器。

第 3 类:跟上 Apple 的各种东西

3.1新的 macOS 渲染管线:

它更改了 macOS 的Java 2D macOS 渲染管道,以使用 Apple Metal API 而不是已弃用的 Apple OpenGL API。

3.2 macOS/AArch64 端口

第 4 类:清理各种东西

4.1弃用 Applet API 以进行删除:

Applet API 将被删除,因为它已被弃用,因为 JDK9 大多数浏览器不再支持它。

4.2 移除RMI激活:

尽管 RMI 仍在使用,但 RMI 激活机制随着过去十年的 Web 技术而过时。

4.3 移除实验性 AOT 和 JIT 编译器

删除实验性的基于 Java 的提前 (AOT) 和即时 (JIT) 编译器。

4.4 弃用安全管理器以进行移除:

弃用安全管理器以在未来版本中移除。安全管理器可追溯到Java 1.0。多年来,它一直不是保护客户端Java代码的主要手段。

安装JDK17

所以现在让我们讨论如何下载最新版本。为了下载最新的 LTS 版本,即 JDK

步骤 1:浏览浏览器并访问 Oracle 网站。

第 2 步:根据您的操作系统下载版本,为了方便不同的操作系统,请参考如下:

  • 适用于 Linux 的 .debian
  • 适用于 macOS 的 .dmg
  • 适用于 Windows 的 .exe

继续下一步并选择要在本地计算机上安装的目录,注意可以通过以下快照在安装过程中看到 JRE 内置支持,因此您无需按照标题图像中的理由单独添加它。

第 3 步:设置系统环境变量的路径,为了检查是否安装了这个新的 JDK,请通过终端输入以下命令进行验证。

javac --version
java --version