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;
    };

    System.out.println(
    開關(k){
    情況 1 -> “一”
    情況 2 -> “二”
    預設->“很多”
    }
    );

    未來基於此功能 計劃 實現模式匹配支援;

  • 添加 對文字區塊的實驗性支援 - 一種新形式的字串文字,允許您在原始程式碼中包含多行文字數據,而無需使用字元轉義並保留區塊中文字的原始格式。 該塊由三個雙引號引起來。 例如,代替表達式

    字串查詢 = "SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\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

添加評論