博客
关于我
JDK15正式发布,新增功能预览!
阅读量:464 次
发布时间:2019-03-06

本文共 1364 字,大约阅读时间需要 4 分钟。

JDK 15发布新功能详解

JDK 15于2020年9月15日正式发布,带来了多项重要增强和改进。以下是本次发布的主要新功能说明。


发布版本说明

JDK 15将是一个短期支持版本,仅维护6个月,直到2021年3月JDK 16发布此版本将停止维护。下一个长期支持版(LTS)计划于2022年9月发布,Java 17将是上一个LTS版本,历时3年发布一次,上一个LTS版本是2018年9月的JDK 11。


JDK 15新功能说明

JDK 15提供了14项主要增强和改进,包含孵化器模块、3个预览功能、2个不推荐使用的功能以及2个删除功能。


1. EdDSA数字签名算法

EdDSA(Edwards-Curve数字签名算法)是JDK 15引入的新功能,提供了现代加密库中常见的数字签名方案。与现有签名方案相比,EdDSA具有更高的安全性和性能优势,是一个全新的功能。


2. 隐身类

隐身类功能有助于框架生成运行时类,允许动态扩展类行为,同时限制类的访问。通过反射访问隐藏类,可以减少框架内存占用,提升效率。这是一个重要的新功能。


3. 重新实现DatagramSocket API

旧版 java.net.DatagramSocketjava.net.MulticastSocket API已被重新实现,采用更简单、现代的方式提高了JDK的可维护性和稳定性。


4. ZGC功能转正

ZGC(Zebra GC)在JDK 11中首次作为预览功能引入,目标是减少GC停顿时间。通过JEP 377,ZGC已从预览功能转变为生产功能。


5. 文本块功能转正

文本块是JEP 355在2019年提出的功能,避免了大多数转义序列的需要,提供可预测的字符串格式化。借助JEP 378,文本块已成为Java语言的永久功能。


6. Shenandoah垃圾回收算法转正

Shenandoah垃圾回收从实验特性转变为产品特性。该算法通过与运行时Java线程同时进行的疏散工作,显著减少GC暂停时间,与堆大小无关。


7. 密封类(预览)

密封类和接口增强Java编程语言,限制超类和超接口的使用,提升代码的可控性和可维护性。


8. instanceof自动匹配模式(预览)

简化了对象类型检查流程。旧写法需先判断类型再转换,而新写法直接在条件判断中声明变量:

if (obj instanceof String s) {    // 代码逻辑} else {    // 类型不匹配处理}

9. Records Class(预览)

Records类在JDK 14中首次作为预览功能引入,使用record关键字创建常量类,简化了代码书写。旧写法需要手动实现equals()hashCode()toString()方法,而新写法一行代码即可完成。


10. 外部存储器访问API(预览)

通过提供一个API,允许Java程序安全有效地访问Java堆之外的外部内存。这是JDK 14的一个预览特性。


11. 其他功能

  • 移除Nashorn JavaScript引擎:已从JDK 15中移除。
  • 移除Solaris和SPARC端口:结束对这些平台的支持。
  • 不推荐的RMI激活去除:标记为不推荐使用。

参考与鸣谢

感谢码农小胖哥的技术支持,以及官方日志的详尽信息。

转载地址:http://ywwbz.baihongyu.com/

你可能感兴趣的文章
NOIp2005 过河
查看>>
NOIP2011T1 数字反转
查看>>
NOIP2014 提高组 Day2——寻找道路
查看>>
noip借教室 题解
查看>>
NOIP模拟测试19
查看>>
NOIp模拟赛二十九
查看>>
Vue3+element plus+sortablejs实现table列表拖拽
查看>>
Nokia5233手机和我装的几个symbian V5手机软件
查看>>
non linear processor
查看>>
Non-final field ‘code‘ in enum StateEnum‘
查看>>
none 和 host 网络的适用场景 - 每天5分钟玩转 Docker 容器技术(31)
查看>>
None还可以是函数定义可选参数的一个默认值,设置成默认值时实参在调用该函数时可以不输入与None绑定的元素...
查看>>
NoNodeAvailableException None of the configured nodes are available异常
查看>>
Vue.js 学习总结(16)—— 为什么 :deep、/deep/、>>> 样式能穿透到子组件
查看>>
nopcommerce商城系统--文档整理
查看>>
NOPI读取Excel
查看>>
NoSQL&MongoDB
查看>>
NoSQL介绍
查看>>
NoSQL数据库概述
查看>>
Notadd —— 基于 nest.js 的微服务开发框架
查看>>