<kbd id="5sdj3"></kbd>
<th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>

    Java 新特性:JShell

    共 1328字,需瀏覽 3分鐘

     ·

    2023-09-28 09:15

    JShell 是在 JDK 9 正式發(fā)布的。它是類似于 Shell 的交互式編程環(huán)境,可以即時執(zhí)行 Java 代碼給出反饋。

    快速反饋

    在傳統(tǒng)的學(xué)習(xí) Java 時,對于一段入門代碼,我們需要相對復(fù)雜的流程。

    1. 編輯器輸入以下代碼:

    class HelloWorld {
    public static void main(String[] args) {
    System.out.println("Hello, world!");
    }
    }
    1. 執(zhí)行以下編譯命令:

    javac HelloWorld.java
    1. 運行:

    java HelloWorld

    對于后續(xù)的每次代碼改動,我們都要執(zhí)行上述的過程。

    當(dāng)然,我們也可以把這個過程放到 IDE 中去做,也不過是 IDE 自動化了以上過程。

    相對于 Shell 腳本、Python、Kotlin 這些語言,Java 一直以來缺少一種即時執(zhí)行、反饋的交互式編程環(huán)境。JShell 就是用來填補(bǔ)這一塊空白的。

    終端執(zhí)行 jshell 進(jìn)入 JShell 后,就可以直接運行以下代碼,得到反饋:

    jshell> System.out.println("Hello, world!");
    Hello, world!

    jshell>

    JShell 加速了反饋,讓我們能夠快速的學(xué)習(xí)、驗證 Java 特性點。

    除此之外,JShell 和 Java 有一些不太一致的地方需要注意。

    重復(fù)聲明

    在 JShell 中,我們可以多次重復(fù)聲明同一變量,也可以改變其類型。

    jshell> String greeting = "Hola";
    greeting ==> "Hola"
    | modified variable greeting : String
    | update overwrote variable greeting : String

    jshell> Integer greeting;
    greeting ==> null
    | replaced variable greeting : Integer
    | update overwrote variable greeting : String

    這降低了我們在 JShell 中編碼的難度,不需要記住以前聲明過什么變量,方便了我們驗證少量代碼。

    直接執(zhí)行表達(dá)式

    JShell 中我們可以直接執(zhí)行表達(dá)式,方便了我們驗證表達(dá)式的工作。

    jshell> 1 + 1
    $1 ==> 2
    | created scratch variable $1 : int

    總結(jié)

    總的來說,JShell 方便我們驗證一些簡單的語法特性和邏輯,有利于我們快速學(xué)習(xí)、驗證 Java 的語言特性。對于一些復(fù)雜的邏輯則不太適合,復(fù)雜的代碼邏輯還是交給 IDE 去做。


    瀏覽 100
    點贊
    評論
    收藏
    分享

    手機(jī)掃一掃分享

    分享
    舉報
    評論
    圖片
    表情
    推薦
    點贊
    評論
    收藏
    分享

    手機(jī)掃一掃分享

    分享
    舉報

    <kbd id="5sdj3"></kbd>
    <th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>
    色色五月天丁香社区 | 亚洲欧美婷婷五月色综合 | 99re在线免费视频 | 草逼电影 | 97综合视 |