Java 重大升级立刻来了:JDK 11 新特性了解一下

Java11,目前处于发布候选阶段的下一版 Java 编程语言,预计将于 2018 年 9 月 25 日全面上市。距离如今还有 2 周时间。因为Oracle 计划于 2019 年 1 月推出针对 JDK 8 的 “Commercial User End of Public Updates”,估计会有许多用户打算在此以前迁移到 JDK 11。html

你准备好了吗?java

算法

Java Development Kit(JDK)11 不单单是一个升级版。 它是 Java 语言的一个大有改善的版本,其中有几个功能专一于性能。 如下是 JDK 11 中可用的新特性列表。编程

基于嵌套的访问控制

嵌套是一种访问控制上下文,与 Java 编程语言中现有的嵌套类型概念一致。 嵌套容许逻辑上属于同一代码实体,但被编译为不一样类文件的类,无需编译器插入可访问性扩展桥接方法,便可访问彼此的私有成员。bootstrap

动态类文件常量

扩展 Java 类文件格式以支持新的常量池形式,CONSTANT_Dynamic。 加载CONSTANT_Dynamic 会将建立委托给 bootstrap 方法,就像连接 invokedynamic 调用站点将连接委托给 bootstrap 方法同样。数组

改进 Aarch64 内联函数

改进现有的字符串和数组内联函数,并在 AArch64 处理器上为 java.lang.Math sin,cos 和 log 函数实现新的内联函数。安全

Epsilon:No-Op 垃圾收集器

开发一个处理内存分配但不实现任何实际内存回收机制的 GC。 一旦可用的 Java 堆耗尽,JVM 将关闭。服务器

删除 Java EE 和 CORBA 模块

从 Java SE Platform 和 JDK 中删除 Java EE 和 CORBA 模块。这些模块在 Java SE 9 中已弃用,声明的目的是为了在未来的版本中删除它们。框架

HTTP 客户端(标准)

经过 JEP 110 标准化 JDK 9 中引入的孵化 HTTP 客户端 API,并在 JDK 10 中进行更新。编程语言

Lambda 参数的本地变量语法

在声明隐式类型的 lambda 表达式的形式参数时容许使用 var。

Curve25519 和 Curve448 密钥协议

使用 RFC 7748 中描述的 Curve25519 和 Curve448 实现密钥协议。

Unicode 10

升级现有平台 API 以支持 Unicode 标准 v10.0。

运行记录仪

提供低开销的数据收集框架,用于对 Java 应用程序和 HotSpot JVM 进行故障排除。

ChaCha20 和 Poly1305 密码算法

实现 RFC 7539 中指定的 ChaCha20 和 ChaCha20-Poly1305 密码。ChaCha20 是一种相对较新的流密码,能够替代旧的、不安全的 RC4 流密码。

启动单文件源代码程序

加强 java 启动程序以运行做为 Java 源代码的单个文件提供的程序,包括经过“shebang”文件和相关技术从脚本中使用。

低开销堆分析

提供一种低开销的 Java 堆分配采样方法,可经过 JVMTI 访问。

传输层安全性(TLS)1.3

实现传输层安全性(TLS)协议 RFC 8446 的 1.3 版。

ZGC:可扩展的低延迟垃圾收集器

Z 垃圾收集器,也称为 ZGC,是一个可扩展的低延迟垃圾收集器。

弃用 Nashorn JavaScript 引擎

弃用 Nashorn JavaScript 脚本引擎和 API 以及 jjs 工具,意图在未来的版本中删除它们。

弃用 Pack200 工具和 API

在 java.util.jar 中弃用 pack200 和 unpack200 工具以及 Pack200 API。

OneAPM 为您提供端到端的  Java 应用性能 解决方案,咱们支持全部常见的 Java 框架及应用服务器,助您快速发现系统瓶颈,定位异常根本缘由。分钟级部署,即刻体验,Java 监控历来没有如此简单。想阅读更多技术文章,请访问  OneAPM 官方技术博客 。

相关文章
相关标签/搜索