JShell在Java 9 中引入,是一個命令列工具,允許我們輸入簡單的語句、表達式、方法和沒有main()方法的類別。
當我們可以在JShell中輸入程式碼時,程式碼已經分配了一個唯一ID。該 ID 從 1 開始,並隨著 JShell 中輸入的每個命令而遞增。對於啟動時載入的庫也是如此。對於每個導入,都分配了一個唯一 ID。它以 $1 開頭,並隨著載入的每個程式碼而遞增($2、$3 等)。有一個內部命令可以列出會話期間載入和輸入的所有程式碼,然後使用「/list」命令。
<strong>/list /list [ID] /list [Code_Name] /list -start /list -all</strong>
在以下程式碼中程式碼片段中,我們可以使用「/list -all」指令列出所有輸入的導入、表達式等。
<strong>jshell> /imports | import java.io.* | import java.math.* | import java.net.* | import java.nio.file.* | import java.util.* | import java.util.concurrent.* | import java.util.function.* | import java.util.prefs.* | import java.util.regex.* | import java.util.stream.* jshell> LocalDate localDate = LocalDate.of(2020, 04, 10) | Error: | cannot find symbol | symbol: class LocalDate | LocalDate localDate = LocalDate.of(2020, 04, 10); | ^-------^ | Error: | cannot find symbol | symbol: variable LocalDate | LocalDate localDate = LocalDate.of(2020, 04, 10); | ^-------^ jshell> int x = 10 x ==> 10 jshell> public enum Operate { ...> ADDITION, ...> DIVISION; ...> } | created enum Operate jshell> /list -all s1 : import java.io.*; s2 : import java.math.*; s3 : import java.net.*; s4 : import java.nio.file.*; s5 : import java.util.*; s6 : import java.util.concurrent.*; s7 : import java.util.function.*; s8 : import java.util.prefs.*; s9 : import java.util.regex.*; s10 : import java.util.stream.*; e1 : LocalDate localDate = LocalDate.of(2020, 04, 10); 1 : int x = 10; 2 : public enum Operate { ADDITION, DIVISION; }</strong>
在下面的程式碼片段中,我們可以命名一個變數、一個方法,甚至是一個具有相同名稱的型別。然後,我們可以使用「/list」指令來顯示該名稱的不同出現次數以及對應的類型。
<strong>jshell> int x = 10 x ==> 10 jshell> public int x(int y) { ...> return y; ...> } | created method x(int) jshell> public long x(long y, long z) { ...> return y + z; ...> } | created method x(long,long) jshell> /list x 1 : int x = 10; 2 : public int x(int y) { return y; } 3 : public long x(long y, long z) { return y + z; }</strong>
以上是在Java 9的JShell中如何顯示不同的清單指令?的詳細內容。更多資訊請關注PHP中文網其他相關文章!