真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

JDK11|第二篇:JShell工具-創(chuàng)新互聯

文章首發(fā)于公眾號《程序員果果》

碑林ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

地址 : https://mp.weixin.qq.com/s/saHBSTo4OjsIIqv_ixigjg

一、簡介

Java Shell工具是JDK1.9出現的工具, Java Shell工具(JShell)是一個用于學習Java編程語言和Java代碼原型的交互式工具。JShell是一個Read-Evaluate-Print循環(huán)(REPL),它在輸入時評估聲明,語句和表達式,并立即顯示結果。該工具從命令行運行。

二、為什么要使用JShell ?

使用JShell,您可以一次輸入一個程序元素,立即查看結果,并根據需要進行調整。
Java程序開發(fā)通常涉及以下過程:

  • 寫一個完整的程序。
  • 編譯它并修復任何錯誤。
  • 運行程序。
  • 弄清楚它有什么問題。
  • 編輯它。
  • 重復這個過程。

JShell可幫助您在開發(fā)程序時嘗試代碼并輕松探索選項。您可以測試單個語句,嘗試不同的方法變體,并在JShell會話中試驗不熟悉的API。JShell不替換IDE。在開發(fā)程序時,將代碼粘貼到JShell中進行試用,然后將JShell中的工作代碼粘貼到程序編輯器或IDE中。

三、JShell的使用

1. 啟動和退出

使用JShell需要配置好java的環(huán)境變量。

啟動:

jshell

要以詳細模式啟動JShell,請使用以下-v選項:

jshell -v

退出:

/exit

2. 運行代碼片段

使用詳細選項啟動JShell以獲得大可用反饋量:

jshell -v
|  歡迎使用 JShell -- 版本 11.0.2
|  要大致了解該版本, 請鍵入: /help intro

在提示符處輸入以下示例語句,并查看顯示的輸出:

jshell> int x = 45
x ==> 45
|  已創(chuàng)建 變量 x : int

首先,顯示結果。將其讀作:變量x的值為45.因為您處于詳細模式,所以還會顯示所發(fā)生情況的描述。

注意:如果未輸入分號,則會自動將終止分號添加到完整代碼段的末尾。

當輸入的表達式沒有命名變量時,會創(chuàng)建一個臨時變量,以便稍后可以引用該值。以下示例顯示表達式和方法結果的臨時值。該示例還顯示了...> 在代碼段需要多行輸入完成時使用的continuation prompt():

jshell> String twice(String s) {
   ...>   return s + s;
   ...> }
|  已創(chuàng)建 方法 twice(String)

jshell> twice("Oecan")
$4 ==> "OecanOecan"
|  已創(chuàng)建暫存變量 $4 : String

3. 改變定義

在試驗代碼時,您可能會發(fā)現變量,方法或類的定義沒有按照您希望的方式執(zhí)行。通過輸入新的定義可以輕松更改定義,該定義將覆蓋先前的定義。
要更改變量,方法或類的定義,只需輸入新定義即可。例如,twice在定義該方法嘗試片段得到在下面的示例中的新定義:

jshell> String twice(String s) {
   ...>   return "Twice: " + s;
   ...> }
|  已修改 方法 twice(String)
|    更新已覆蓋 方法 twice(String)

jshell> twice("thing")
$6 ==> "Twice: thing"
|  已創(chuàng)建暫存變量 $6 : String

還可以改變變量的類型定義。以下示例顯示x從String更改int為:

jshell> int x = 45
x ==> 45
|  已創(chuàng)建 變量 x : int

jshell> String x
x ==> null
|  已替換 變量 x : String
|    更新已覆蓋 變量 x : int

4. 查看默認導入和使用自動補全功能

默認情況下,JShell提供了一些常用包的導入,我們可以使用import語句導入必要的包或是從指定的路徑的包,來運行我們的代碼片段。我們可以輸入以下命令列出所有導入的包:

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.*

5. 自動補全的功能

當我們想輸入System類時,根據前面說的自動補全,只需要輸入Sys然后按下 Tab 鍵,則自動補全, 然后再輸入“.o”,則會自動補全方法, 在補全“System.out.”后按下 Tab 鍵,接下來就會列出當前類的所有的 public 方法的列表:

jshell> System
簽名:
java.lang.System

<再次按 Tab 可查看文檔>

jshell> System.out.
append(        checkError()   close()        equals(        flush()        format(        getClass()     
hashCode()     notify()       notifyAll()    print(         printf(        println(       toString()     
wait(          write(

6. 列出到目前為止當前 session 里所有有效的代碼片段

jshell> /list 

   2 : 2+2
   4 : twice("Oecan")
   5 : String twice(String s) {
         return "Twice: " + s;
       }
   6 : twice("thing")
   8 : String x;

7. 列出到目前為止當前 session 里所有方法

jshell> /methods 
|    String twice(String)

8. 使用外部代碼編輯器來編寫 Java 代碼

現在,我想對twice方法做一些改動,如果這時有外部代碼編輯器的話,做起來會很容易。在 JShell 中可以啟用JShell Edit Pad 編輯器,需要輸入如下命令,來修改上面的方法:

JDK11  |  第二篇 : JShell 工具

代碼修改完成以后,先點擊“Accept”按鈕,再點擊“Exit”按鈕,則退出編輯器,在 JShell 命令行中提示方法已經修改。

9. 從外部加載源代碼

如果在外部已經有寫好的 Java 文件,可以使用/open 命令導入到 JShell 環(huán)境中,例如現在有一個Test.java文件:

void say(String name) {
     System.out.println("hello " + name);
}
jshell> /open /Users/Documents/java11/Test.java

jshell> /methods
|    String twice(String)
|    void say(String)

jshell> say("zhangsan")
hello zhangsan

JShell工具的更多使用方法,請參照官方示例:https://docs.oracle.com/javase/9/jshell/

歡迎關注我的公眾號《程序員果果》,關注有驚喜~~
JDK11  |  第二篇 : JShell 工具

創(chuàng)新互聯www.cdcxhl.cn,專業(yè)提供香港、美國云服務器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網絡助力業(yè)務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準確進行流量調度,確保服務器高可用性。佳節(jié)活動現已開啟,新人活動云服務器買多久送多久。


當前標題:JDK11|第二篇:JShell工具-創(chuàng)新互聯
URL網址:http://weahome.cn/article/ccjjjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部