java9新功能-jshell

JShell 是 Java 9 引入的一個交互式編程工具,它是 Java 的 REPL(Read-Eval-Print Loop)實(shí)現(xiàn)。REPL 是一種簡單的细层、交互式的編程環(huán)境,允許開發(fā)者在不編寫完整的 Java 類和方法的情況下唬涧,快速編寫和測試代碼片段疫赎。這對于學(xué)習(xí)、實(shí)驗(yàn)和快速原型設(shè)計(jì)非常有用碎节。

基本用法

  • 啟動 JShell
    在終端或命令提示符下輸入jshell即可啟動捧搞,啟動后會看到類似于以下的提示符。


    圖1
  • 輸入表達(dá)式


    圖2
  • 聲明變量


    圖3
  • 聲明方法


    圖4
  • 查看變量和方法


    圖5

常用命令

  • /help:顯示幫助信息狮荔。
  • /exit:退出 JShell胎撇。
  • /list:列出會話中輸入的所有代碼片段。
  • /edit:編輯先前的代碼片段殖氏。
  • /reset:重置會話晚树,清除所有定義的變量、方法和類雅采。
  • /vars:顯示當(dāng)前會話中的所有變量爵憎。
  • /methods:顯示當(dāng)前會話中的所有方法慨亲。
  • /classes:顯示當(dāng)前會話中的所有類。
  • /save:保存當(dāng)前會話到文件宝鼓。
  • /open:從文件中加載會話刑棵。

優(yōu)點(diǎn)和不足

JShell 作為一個交互式編程工具,具有許多優(yōu)點(diǎn)愚铡,如即時反饋铐望、簡化語法和方便的會話管理,我簡單總結(jié)了以下部分:

  • 即時反饋

    JShell 提供了 REPL(Read-Eval-Print Loop)環(huán)境茂附,允許開發(fā)者在輸入代碼后立即看到結(jié)果正蛙。這有助于快速調(diào)試和驗(yàn)證代碼片段。

  • 簡化語法

    開發(fā)者可以在不需要編寫完整類和方法的情況下营曼,直接編寫和執(zhí)行 Java 代碼片段乒验。這使得實(shí)驗(yàn)和測試變得更加簡單和快捷。

  • 學(xué)習(xí)和教學(xué)工具

    JShell 是學(xué)習(xí)和教學(xué) Java 的理想工具蒂阱。初學(xué)者可以通過交互式編程環(huán)境快速了解和掌握 Java 語言的基本概念锻全。

  • 快速原型設(shè)計(jì)

    開發(fā)者可以使用 JShell 進(jìn)行快速原型設(shè)計(jì)和探索,測試新的想法和代碼邏輯录煤,而無需創(chuàng)建完整的項(xiàng)目或類結(jié)構(gòu)鳄厌。

以上介紹了jshell的一些優(yōu)勢,但是在一些復(fù)雜的項(xiàng)目場景下妈踊,jshell也存在很多不足了嚎,比如無法進(jìn)行深入的開發(fā)和調(diào)試,仍然需要借助傳統(tǒng)的開發(fā)工具和構(gòu)建系統(tǒng)廊营,主要體現(xiàn)在以下方面

  • 不適用于復(fù)雜項(xiàng)目

    JShell 適用于測試和實(shí)驗(yàn)小段代碼歪泳,不適合管理和開發(fā)大型、復(fù)雜的 Java 項(xiàng)目露筒。對于完整的應(yīng)用開發(fā)呐伞,仍然需要使用傳統(tǒng)的開發(fā)工具和構(gòu)建系統(tǒng)(如 IDE 和 Maven/Gradle)。

  • 有限的調(diào)試功能

    盡管 JShell 提供了基本的錯誤提示和反饋慎式,但其調(diào)試功能相對有限伶氢。對于深入的調(diào)試和性能分析,仍然需要使用專業(yè)的調(diào)試工具瘪吏。

  • 性能限制

    JShell 在處理大型數(shù)據(jù)集和復(fù)雜計(jì)算時癣防,可能表現(xiàn)出性能問題。它更適合于小規(guī)模的測試和驗(yàn)證肪虎。

  • 依賴管理

    JShell 對于外部庫和依賴的管理不如 Maven 或 Gradle 方便劣砍。盡管可以通過類路徑(classpath)加載外部庫惧蛹,但這種方式在管理復(fù)雜依賴時不夠高效扇救。

  • 缺乏完整的 IDE 功能

    與成熟的 IDE(如 IntelliJ IDEA刑枝、Eclipse)相比,JShell 缺乏代碼補(bǔ)全迅腔、重構(gòu)和代碼導(dǎo)航等高級功能装畅。對于大型項(xiàng)目開發(fā),這些功能是不可或缺的沧烈。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掠兄,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子锌雀,更是在濱河造成了極大的恐慌蚂夕,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,000評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件腋逆,死亡現(xiàn)場離奇詭異婿牍,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)惩歉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評論 3 399
  • 文/潘曉璐 我一進(jìn)店門等脂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人撑蚌,你說我怎么就攤上這事上遥。” “怎么了争涌?”我有些...
    開封第一講書人閱讀 168,561評論 0 360
  • 文/不壞的土叔 我叫張陵粉楚,是天一觀的道長。 經(jīng)常有香客問我亮垫,道長解幼,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,782評論 1 298
  • 正文 為了忘掉前任包警,我火速辦了婚禮撵摆,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘害晦。我一直安慰自己特铝,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,798評論 6 397
  • 文/花漫 我一把揭開白布壹瘟。 她就那樣靜靜地躺著鲫剿,像睡著了一般。 火紅的嫁衣襯著肌膚如雪稻轨。 梳的紋絲不亂的頭發(fā)上灵莲,一...
    開封第一講書人閱讀 52,394評論 1 310
  • 那天,我揣著相機(jī)與錄音殴俱,去河邊找鬼政冻。 笑死万哪,一個胖子當(dāng)著我的面吹牛夭拌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,952評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼匾委,長吁一口氣:“原來是場噩夢啊……” “哼惩系!你這毒婦竟也來了廉嚼?” 一聲冷哼從身側(cè)響起药磺,我...
    開封第一講書人閱讀 39,852評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎舟舒,沒想到半個月后拉庶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,409評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡秃励,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,483評論 3 341
  • 正文 我和宋清朗相戀三年砍的,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片莺治。...
    茶點(diǎn)故事閱讀 40,615評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡廓鞠,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出谣旁,到底是詐尸還是另有隱情床佳,我是刑警寧澤,帶...
    沈念sama閱讀 36,303評論 5 350
  • 正文 年R本政府宣布榄审,位于F島的核電站砌们,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏搁进。R本人自食惡果不足惜浪感,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,979評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望饼问。 院中可真熱鬧影兽,春花似錦、人聲如沸莱革。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽盅视。三九已至捐名,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間闹击,已是汗流浹背镶蹋。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人贺归。 一個月前我還...
    沈念sama閱讀 49,041評論 3 377
  • 正文 我出身青樓淆两,卻偏偏與公主長得像,于是被迫代替她去往敵國和親牧氮。 傳聞我的和親對象是個殘疾皇子琼腔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,630評論 2 359

推薦閱讀更多精彩內(nèi)容