Java13新特性

Java 13 的官方开发目标包含改进垃圾收集、应用程序的类数据共享和文本块html

Java 开发工具包(JDK)13,标准 Java 的下一个版本,如今可做为候选版本使用,全部新功能都已锁定。JDK 13提出了一种功能,但从未添加到官方列表中,即用于打包自包含 Java 应用程序的 jpackage 工具,已经无缘晋级。JDK 13 再也不考虑它。java

[新的 Java 已经来了!了解 Jakarta EE 企业 Java 路线图。|新 Java 版本在这里!你须要学习任何关于 Java JDK 11 的新功能和 Java EE 8 的新功能。|使用 InfoWorld 的 App Dev Report 简报了解编程中的热门话题。]编程

JDK 13 将于2019年9月17日到期。第二个候选版本将于8月22日到期。如下是 JDK 13 的官方特性:数据结构

  • 在预览阶段添加文本块。文本块是一个多行字符串文本,它避免了对大多数转义序列的须要。文本块以可预测的方式自动格式化字符串,并让开发人员控制格式。该项目引用了向 Java 添加文本块背后的一些目标。一个目标是简化 Java 程序的编写,方法是简化跨几行源代码的字符串的表达,同时在常见状况下避免转义序列。第二个目标是加强程序中字符串的可读性,这些字符串表示用非 Java 语言编写的代码。第三个目标是支持从字符串字面量迁移,规定任何新构造均可以将相同的字符串集表示为字符串字面量,解释相同的转义序列,并像字符串字面量同样进行操做。

原始字符串并发

是 JDK 13 的一个特性,但它放弃了文本块,采用了一种不一样的方法来表示字符串而不转义换行和引号。原始字符串关注的是字符串的原始性,可是 Java 项目团队如今认为焦点是错误的,由于虽然原始字符串能够跨越多行源代码,可是它们涉及到支持非转义分隔符的昂贵需求。JDK 13 曾计划使用原始字符串,但从未正式将其添加到建议的特性列表中。异步

  • 从新实现遗留的套接字API,涉及使用更简单、更现代的实现替换如今的 net.Socketjava.net.ServerSocket API 底层实现。这个新实现的目的是为了更容易地适应用户模式线程(也称为 fibers),这些线程正在 Project Loom 中进行研究。前面提到的遗留 API 能够追溯到 JDK 1.0,由遗留 C 和 Java 代码组成,这些代码被描述为调试和维护起来很麻烦。遗留实现还存在其余问题:支持异步关闭的本机数据结构,致使可靠性和移植问题,以及须要完全检查的并发性问题。
    • 第二个 switch 表达式预览已经被提议用于 JDK 13。JDK 12 中曾经有一个这样的语句,可是如今要作一个更改:要从一个 switch 表达式中产生一个值,将删除break 跳出当前值语句以支持yield语句。其目的是扩展 switch ,使其既能够用做语句,也能够用做表达式,所以这两种形式均可以使用传统的 case ... : 标签和新的 case … -> 标签,而不使用 fall through,使用一个新的语句从 switch 表达式生成一个值。这些更改将简化编码并为模式匹配作准备。
    • 加强 ZGC(Z 垃圾收集器),将未使用的内存返回到操做系统,这是一个集成到 JDK 13 中的建议。ZGC 被标榜为一个可伸缩、低延迟的收集器,它目前不会将未使用的内存返回给操做系统,即便内存已经很长时间没有使用了。对于某些应用程序和环境来讲,这种行为不是最优的,特别是那些须要考虑内存占用的应用程序,例如容器或环境,其中应用程序可能长时间处于空闲状态,而且正在与其余应用程序共享或竞争资源。
    • 扩展应用程序类数据共享(AppCDS),以支持在应用程序执行结束时动态归档类。存档类将包括全部加载的应用程序和库类,这些类不存在于默认的底层 CD 存档中。该建议正处于目标阶段,其目的是提升 AppCDS 的可用性,并消除用户在为每一个应用程序建立类列表时进行试运行的须要。

哪里能够下载 beta JDK 13 版本

你能够从 jdk.java.net 网站下载 JDK 13 构建。JDK 13 的第一个 beta 版本可用于 Linux、MacOS 和 Windows。socket

本文中的 ”JDK 13:Java 的新特性“ 最初由 InfoWorld 发布。工具

原文:https://www.javaworld.com/article/3341388/jdk-13-the-new-features-coming-to-java-13.html学习

做者:Paul Krill开发工具

译者:Queena
------

9月福利,关注公众号​后台回复:004,领取8月翻译集锦!​往期福利回复:001,002, 003便可领取!

img

相关文章
相关标签/搜索