此版本帶來了以下幾大新功能:
JEP 350,Dynamic CDS Archives:擴展應用程式類別 - 資料共享,以允許在 Java 應用程式執行結束時動態歸檔類別。歸檔類別將包括預設的基礎層 CDS(class data-sharing)存檔中不存在的所有已載入的應用程式類別和庫類別。
JEP 351,ZGC: Uncommit Unused Memory:增強 ZGC 以將未使用的堆記憶體傳回給作業系統。
JEP 353,Reimplement the Legacy Socket API:使用易於維護和調試的更簡單、更現代的實作來取代 java.net.Socket 和 java.net.ServerSocket API 使用的底層實作。
JEP 354,Switch Expressions (Preview):可在生產環境中使用的 switch 表達式,JDK 13 中將帶來一個 beta 版本實作。 switch 表達式擴展了switch 語句,使其不僅可以作為語句(statement),還可以作為表達式(expression),並且兩種寫法都可以使用傳統的switch 語法,或者使用簡化的“case L ->”模式匹配語法作用於不同範圍並控制執行流程。這些變更將簡化日常編碼工作,並為 switch 中的模式匹配(JEP 305)做好準備。
JEP 355,Text Blocks (Preview):將文字區塊加入 Java 語言。文字區塊是一個多行字串文字,它避免了對大多數轉義序列的需要,以可預測的方式自動格式化字串,並在需要時讓開發人員控制格式。
JDK 13 下載位址為 。
以 Windows 環境為例,可透過 jdk-13_windows-x64_bin.exe 或 jdk-13_windows-x64_bin.zip 來安裝。 .exe 檔案的安裝方式較為簡單,請依照介面提示點選 「下一步」 即可。
下面示範. zip 安裝方式。
將 jdk-13_windows-x64_bin.zip 檔案解壓縮到指定的目錄下即可。例如,本例子放置在了D:\Program Files\jdk-13位置。
建立系統變數 “JAVA_HOME”,其值指向了 JDK 的安裝目錄。
# 在使用者變數 “Path” 中,增加“%JAVA_HOME%\bin”。
# 註:JDK13 已經無需再安裝 JRE,設定環境變數時也不用設定 CLASSPATH 了。
執行 “java -version” 指令進行安裝的驗證:
$ java -version java version "13" 2019-09-17 Java(TM) SE Runtime Environment (build 13+33) Java HotSpot(TM) 64-Bit Server VM (build 13+33, mixed mode, sharing)
# 如果顯示上述訊息,則表示 JDK 已經安裝完成。
如果顯示的內容還是安裝前的老 JDK 版本,可依照下列步驟解決。
首先,解除安裝舊版的 JDK
# 其次,在命令列輸入如下指令來設定 JAVA_HOM 和 Path:
>SET JAVA_HOME=D:\Program Files\jdk-13 >SET Path=%JAVA_HOME%\bin
在 Java 13 發布兩天後的 2019 年 9 月 19 日,Eclipse IDE 2019-09 發布。 Eclipse IDE 2019-09 聲稱支援 Java 13。接著裡將示範如何使用 Eclipse IDE 2019-09 寫 Java 13 的範例。
本範例使用的是 Eclipse 4.14 版本。
以下是原有的 Switch 表達式的寫法:
switch (day) { case MONDAY: case FRIDAY: case SUNDAY: System.out.println(6); break; case TUESDAY: System.out.println(7); break; case THURSDAY: case SATURDAY: System.out.println(8); break; case WEDNESDAY: System.out.println(9); break; }
在 Java 12 中,Switch 表達式可以改為如下寫法:
switch (day) { case MONDAY, FRIDAY, SUNDAY -> System.out.println(6); case TUESDAY -> System.out.println(7); case THURSDAY, SATURDAY -> System.out.println(8); case WEDNESDAY -> System.out.println(9); }
也能支援在表達式中傳回值:
int numLetters = switch (day) { case MONDAY, FRIDAY, SUNDAY -> 6; case TUESDAY -> 7; case THURSDAY, SATURDAY -> 8; case WEDNESDAY -> 9; };
在 Java 13 中,Switch 表達式可以改為如下寫法:
int date = switch (day) { case MONDAY, FRIDAY, SUNDAY : yield 6; case TUESDAY : yield 7; case THURSDAY, SATURDAY : yield 8; case WEDNESDAY : yield 9; default : yield 1; // default条件是必须的 }; System.out.println(date);
要注意的是,在使用 yield 時,必須要有 default 條件。
自 Java 13 開始,支援文字區塊(Text Blocks)。
以下是 Java 13 之前的文字區塊的處理方式的範例:
String html = "\n" + " \n" + " <p>Hello, world</p>\n" + " \n" + "\n"; System.out.println(html);
在上述範例中,由於文字區塊需要換行,所以產生了許多本文的拼接和轉義。
以下是 Java 13 中的文字區塊範例:
String html2 = """ <p>Hello, world</p> """; System.out.println(html2);
在上述範例中,對於文字區塊的處理變得簡潔、自然。
以上兩個範例在控制台輸出內容都是一樣的,效果如下:
<p>Hello, world</p>
以上是Java13怎麼安裝使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!