Java SE 13 发布

经过六个月的开发,Oracle 发布 一个平台 JavaSE 13 (Java 平台,标准版 13),开源 OpenJDK 项目用作参考实现。 Java SE 13 保持了与以前版本的 Java 平台的向后兼容性;所有以前编写的 Java 项目在新版本下运行时都将无需更改即可运行。 准备安装 Java SE 13 版本(JDK、JRE 和 Server JRE) 准备好的 适用于 Linux (x86_64)、Solaris、Windows 和 macOS。 OpenJDK项目开发的参考实现 Java 13的 在 GPLv2 许可证下完全开源,GNU ClassPath 例外允许与商业产品动态链接。

Java SE 13 被归类为一般支持版本,并将继续接收更新,直到下一个版本。 长期支持 (LTS) 分支应该是 Java SE 11,它将继续接收更新直到 2026 年。 Java 8 之前的 LTS 分支将支持到 2020 年 2021 月。 下一个 LTS 版本计划于 10 年 14 月发布。 让我们提醒您,从Java XNUMX发布开始,该项目切换到了新的开发流程,这意味着新版本的形成周期更短。 现在,新功能是在一个不断更新的主分支中开发的,其中包括现成的更改,并且每六个月从该分支分支一次以稳定新版本。 Java XNUMX 计划于明年 XNUMX 月发布,预览版已经发布 可得到 供测试用。

创新 Java 13的 人们可以 标记:

  • 添加者 支持动态添加 CDS(类数据共享)档案,提供对公共类的共享应用程序访问。 通过 CDS,常见的类可以放置在单独的共享存档中,从而使应用程序能够更快地启动并减少开销。 新版本添加了在应用程序执行结束后动态归档类的工具。 存档的类包括程序运行期间加载的所有类和随附库,这些类和库不在最初提供的基本 CDS 存档中;
  • 至 ZGC(Z 垃圾收集器) 添加 支持将未使用的内存返回给操作系统;
  • 涉及 旧版 Socket API(java.net.Socket 和 java.net.ServerSocket)的重新设计实现,更易于维护和调试。 此外,建议的实现将更容易适应用户空间(纤程)中的新线程系统,该系统是作为 Loom 项目的一部分开发的;
  • 继续 开发了一种新的表达形式“switch”。 添加了实验(预览)功能,不仅可以以运算符的形式使用“switch”,还可以将其用作表达式。 例如,您现在可以使用如下结构:

    int numLetters = switch (天) {
    案例周一、周五、周日 -> 6;
    周二案例 -> 7;
    案例周四、周六 -> 8;
    周三案例 -> 9;
    };

    или

    系统.out.println(
    开关(k){
    情况 1 -> “一”
    情况 2 -> “二”
    默认->“很多”
    }
    );

    未来基于此功能 正在计划中 实现模式匹配支持;

  • 添加者 对文本块的实验性支持 - 一种新形式的字符串文字,允许您在源代码中包含多行文本数据,而无需使用字符转义并保留块中文本的原始格式。 该块由三个双引号引起来。 例如,代替表达式

    字符串查询=“从`EMPLOYEE_TB`中选择`EMP_ID`,`LAST_NAME`\n”+
    "其中 `CITY` = '印第安纳波利斯'\n" +
    "按 `EMP_ID`、`LAST_NAME` 排序;\n";

    现在您可以使用该结构:

    字符串查询 = """
    从“EMPLOYEE_TB”中选择“EMP_ID”、“LAST_NAME”
    其中“城市”=“印第安纳波利斯”
    按“EMP_ID”、“LAST_NAME”排序;
    “””;

  • 已关闭 2126 个错误报告,其中 1454 个由 Oracle 员工解决,671 个由第三方解决,其中六分之一的更改由独立开发人员完成,其余由 IBM、Red Hat、Google 等公司的代表完成、龙芯、华为、ARM和SAP。

Java SE 13 发布

来源: opennet.ru

添加评论