<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Java 新特性:JShell

          共 1328字,需瀏覽 3分鐘

           ·

          2023-09-28 09:15

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

          快速反饋

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

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

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

          javac HelloWorld.java
          1. 運(yùn)行:

          java HelloWorld

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

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

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

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

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

          jshell>

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

          除此之外,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

          這降低了我們?cè)?JShell 中編碼的難度,不需要記住以前聲明過(guò)什么變量,方便了我們驗(yàn)證少量代碼。

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

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

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

          總結(jié)

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


          瀏覽 100
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费无人区一区二区三区 | 中文亚洲视频 | 免费的A片视频 | 欧美性爱天天 | 91视频在线看 |