JDK 15是Java SE平台版本15的开源参考实现,由Java社区流程中的JSR 390指定。JDK 15于2020年9月15日正式发布,Oracle可以提供GPL下的生产就绪二进制文件,有Linux / AArch64、Linux / x64、macOS / x64、Windows / x64平台软件包下载。

JDK 15/Java 15的亮点包括加密签名、文本块、隐藏类、外部存储器访问API、ZGC、模式匹配和Records等。

JDK 15/Java 15新特性介绍

339:Edwards-Curve Digital Signature Algorithm (EdDSA)

使用Edwards-Curve数字签名算法(EdDSA)实现加密签名。与其它签名方案相比,EdDSA具有更高的安全性和性能,并且已在许多其它加密库(如OpenSSL和BoringSSL)中得到支持。

360:Sealed Classes (Preview)

用于限制超类的使用,密封的类和接口限制其它可能继承或实现它们的其它类或接口。

371:Hidden Classes

隐藏类适用于在运行时生成类并通过反射间接使用它们的框架。隐藏类可以定义为访问控制嵌套的成员,并且可以独立于其他类进行卸载。

372:Remove the Nashorn JavaScript Engine

删除Nashorn JavaScript脚本引擎和API,以及jjs工具。不建议在Java 11中删除引擎,API和工具,并明确表示打算在将来的版本中删除它们。

373:Reimplement the Legacy DatagramSocket API

重新实现旧版DatagramSocket API,用易于维护和调试的更简单、更现代的实现来代替java.net.DatagramSocket和java.net.MulticastSocketAPI的基础实现。

374:Disable and Deprecate Biased Locking

默认情况下禁用偏向锁,并弃用所有相关的命令行选项。

375:Pattern Matching for instanceof (Second Preview)

通过对instanceof运算符进行模式匹配来增强Java编程语言。模式匹配允许程序中的通用逻辑,即从对象中有条件地提取组件,可以更简洁、更安全地表示。

377:ZGC: A Scalable Low-Latency Garbage Collector

将Z垃圾收集器从实验功能更改为产品功能。

378:Text Blocks

将文本块添加到Java语言。文本块是多行字符串文字,它避免了大多数转义序列的需要,以一种可预测的方式自动设置字符串的格式,并在需要时使开发人员可以控制格式。

379:Shenandoah: A Low-Pause-Time Garbage Collector (Production)

Shenandoah垃圾回收从实验特性变为产品特性。这是一个从JDK 12引入的回收算法,该算法通过与正在运行的Java线程同时进行疏散工作来减少GC暂停时间。Shenandoah的暂停时间与堆大小无关,无论堆栈是200 MB还是200 GB,都具有相同的一致暂停时间。

381:Remove the Solaris and SPARC Ports

删除源代码并构建对Solaris/SPARC,Solaris/x64和Linux/SPARC端口的支持。不建议在JDK 14中删除这些端口,并明确表示打算在将来的版本中删除它们。

383:Foreign-Memory Access API (Second Incubator)

引入一个API,以允许Java程序安全有效地访问Java堆之外的外部内存。

384:Records (Second Preview)

Records提供了一种紧凑的语法来声明类,以帮助开发者写出更简洁的代码,这些类是浅层不可变数据(shallowly immutable data)的透明拥有者。该特性主要用在特定领域的类,这些类主要用于保存数据,不提供领域行为。

385:Deprecate RMI Activation for Removal

弃用RMI激活机制以便将来删除。RMI激活是RMI的过时部分,自Java 8开始,RMI一直是可选的。另外不会弃用RMI的其他部分。

关键词: java下载文件