Java 简明教程

Java 13 - New Features

Java 13 是一个主打新特性的版本,它为 Java 带来了许多针对 JVM 的改动,以及一些针对语言的改动。它遵循了从 Java 10 开始推出的 Java 发布节奏,并在 Java 12 发布仅 6 个月之后的 2019 年 9 月发布。

Java 13 是一个非 LTS 版本。

New Features in Java 13

以下是 Java 13 中引入的主要新特性。

  1. JEP 354 - Switch Expressions - 一个预览功能,允许通过 yield 切换到使用返回值。

  2. JEP 355 - Text Blocks - 一个预览功能,可以轻松处理 JSON、XML 等多行字符串。

  3. String new methods - 向 string 中添加了用于处理文本块的新方法。

  4. JEP 353 - Socket API Reimplementation - 重写了底层 API。

  5. FileSystems.newFileSystem() - 添加了三个新方法以简化其使用。

  6. DOM/SAX Factories - 添加了新方法以增加命名空间支持。

  7. * Dynamic CDS Archive* - 可以轻松创建 CDS 归档。

  8. JEP 351 - ZGC Enhancements - ZGC 增强,可以将未使用的堆内存返回给操作系统。

Java 13 为 java.nio.file.FileSystems 引入了三个新方法,以便轻松地将文件的内容当作文件系统处理。

  1. newFileSystem(Path)

  2. newFileSystem(Path, Map<String, ?>)

  3. newFileSystem(Path, Map<String, ?>, ClassLoader)

以下是添加到语言中的其他主要变更。

  1. java.time – 添加了日本年号

  2. javax.crypto – 支持 Microsoft Cryptography Next Generation (CNG)

  3. javax.security – 添加了 jdk.sasl.disabledMechanisms 属性以禁用 SASL 机制

  4. javax.xml.crypto – 引入了表示规范 XML 1.1 URI 的字符串常量

  5. javax.xml.parsers – 添加了为命名空间支持实例化 DOM 和 SAX 工厂的方法

  6. Unicode 支持已升级到 12.1 版本

  7. 添加了 Kerberos 主体名称规范化支持,支持跨域引用。

API marked for Removal

  1. JDK 1.4 前的 SocketImpl 实现

  2. javax.security.cert API

  3. rmic

  4. javadoc tool old features

以下链接中可获得其他详细信息 APIs proposed for removal.