Java SE 13 リリース

XNUMX か月の開発期間を経て、Oracle 解放された プラットフォーム JavaSE 13 (Java Platform, Standard Edition 13) では、オープンソースの OpenJDK プロジェクトがリファレンス実装として使用されます。 Java SE 13 は、Java プラットフォームの以前のリリースとの下位互換性を維持しており、以前に作成されたすべての Java プロジェクトは、新しいバージョンで実行しても変更せずに機能します。 すぐにインストールできる Java SE 13 ビルド (JDK、JRE、および Server JRE) 準備された Linux (x86_64)、Solaris、Windows、macOS 用。 OpenJDK プロジェクトによって開発されたリファレンス実装 ジャワ13 は GPLv2 ライセンスの下で完全にオープン ソースであり、GNU ClassPath の例外により商用製品との動的リンクが可能です。

Java SE 13 は一般サポート リリースとして分類されており、次のリリースまで更新を受け取り続けます。 Long Term Support (LTS) ブランチは Java SE 11 である必要があり、2026 年までアップデートを受け取り続けます。 Java 8 の以前の LTS ブランチは、2020 年 2021 月までサポートされます。 次回の LTS リリースは 10 年 14 月に予定されています。 Java XNUMX のリリース以降、プロジェクトは新しい開発プロセスに切り替わり、新しいリリースの形成サイクルが短縮されることを意味していることを思い出してください。 新しい機能は、常に更新される XNUMX つのマスター ブランチで開発されるようになりました。これには既成の変更が含まれており、新しいリリースを安定させるために XNUMX か月ごとにそこからブランチが分岐されます。 Java XNUMXは来年XNUMX月にリリース予定で、すでにプレビュービルドが提供されている 利用可能 テスト用。

イノベーション ジャワ13 1ことができます マーク:

  • 追加した CDS (クラス データ共有) アーカイブの動的な追加をサポートし、共通クラスへの共有アプリケーション アクセスを提供します。 CDS を使用すると、共通のクラスを別の共有アーカイブに配置できるため、アプリケーションの起動が速くなり、オーバーヘッドが削減されます。 新しいバージョンでは、アプリケーションの実行終了後にクラスを動的にアーカイブするためのツールが追加されています。 アーカイブされたクラスには、最初に提供されたベース CDS アーカイブには含まれていなかった、プログラム操作中にロードされたすべてのクラスと付随ライブラリが含まれます。
  • ZGC(ゼットガベージコレクター)へ 追加した 未使用のメモリをオペレーティング システムに戻すサポート。
  • 関与した レガシー ソケット API (java.net.Socket および java.net.ServerSocket) の実装が再設計され、保守とデバッグが容易になりました。 さらに、提案された実装は、Loom プロジェクトの一部として開発された、ユーザー空間の新しいスレッド システム (ファイバー) での動作に適応するのが容易になります。
  • 続き 新しい表現「スイッチ」の開発。 「スイッチ」を演算子だけでなく式としても使用できる実験的 (プレビュー) 機能を追加しました。 たとえば、次のような構成を使用できるようになりました。

    int numLetters = スイッチ (日) {
    月曜日、金曜日、日曜日の場合 -> 6;
    火曜日 -> 7;
    木曜日、土曜日の場合 -> 8;
    水曜日の場合 -> 9;
    };

    または

    System.out.println(
    スイッチ (k) {
    ケース 1 -> 「XNUMX つ」
    ケース 2 -> 「XNUMX」
    デフォルト -> 「多数」
    }
    );

    今後はこの機能をもとに、 計画中 パターンマッチングのサポートを実装します。

  • 追加した テキスト ブロックの実験的サポート - 文字エスケープを使用せず、ブロック内のテキストの元の書式を保持することなく、ソース コードに複数行のテキスト データを含めることができる新しい形式の文字列リテラル。 ブロックは XNUMX つの二重引用符で囲まれています。 たとえば、次の式の代わりに、

    文字列クエリ = "SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n" +
    "WHERE `CITY` = 'インディアナポリス'\n" +
    "`EMP_ID`、`LAST_NAME` で注文;\n";

    これで、次の構造を使用できるようになります。

    文字列クエリ = """
    `EMPLOYEE_TB` から `EMP_ID`、`LAST_NAME` を選択します
    ここで「都市」=「インディアナポリス」
    `EMP_ID`、`LAST_NAME` で注文します。
    """;

  • 2126 件のバグレポートがクローズされ、そのうち 1454 件は Oracle 従業員によって解決され、671 件はサードパーティによって解決されました。そのうち XNUMX 分の XNUMX の変更は独立した開発者によって行われ、残りは IBM、Red Hat、Google などの企業の代表者によって行われました。 、ロンソン、ファーウェイ、ARM、SAP。

Java SE 13 リリース

出所: オープンネット.ru

コメントを追加します