欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

JDK11|第二篇:JShell工具

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

成都創(chuàng)新互聯(lián)專注于企業(yè)營(yíng)銷型網(wǎng)站、網(wǎng)站重做改版、朔州網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、購(gòu)物商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為朔州等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

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

一、簡(jiǎn)介

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

二、為什么要使用JShell ?

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

  • 寫一個(gè)完整的程序。
  • 編譯它并修復(fù)任何錯(cuò)誤。
  • 運(yùn)行程序。
  • 弄清楚它有什么問題。
  • 編輯它。
  • 重復(fù)這個(gè)過程。

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

三、JShell的使用

1. 啟動(dòng)和退出

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

啟動(dòng):

jshell 

要以詳細(xì)模式啟動(dòng)JShell,請(qǐng)使用以下-v選項(xiàng):

jshell -v

退出:

/exit

2. 運(yùn)行代碼片段

使用詳細(xì)選項(xiàng)啟動(dòng)JShell以獲得最大可用反饋量:

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

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

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

首先,顯示結(jié)果。將其讀作:變量x的值為45.因?yàn)槟幱谠敿?xì)模式,所以還會(huì)顯示所發(fā)生情況的描述。

注意:如果未輸入分號(hào),則會(huì)自動(dòng)將終止分號(hào)添加到完整代碼段的末尾。

當(dāng)輸入的表達(dá)式?jīng)]有命名變量時(shí),會(huì)創(chuàng)建一個(gè)臨時(shí)變量,以便稍后可以引用該值。以下示例顯示表達(dá)式和方法結(jié)果的臨時(shí)值。該示例還顯示了...> 在代碼段需要多行輸入完成時(shí)使用的continuation prompt():

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

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

3. 改變定義

在試驗(yàn)代碼時(shí),您可能會(huì)發(fā)現(xiàn)變量,方法或類的定義沒有按照您希望的方式執(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. 查看默認(rèn)導(dǎo)入和使用自動(dòng)補(bǔ)全功能

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

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. 自動(dòng)補(bǔ)全的功能

當(dāng)我們想輸入System類時(shí),根據(jù)前面說的自動(dòng)補(bǔ)全,只需要輸入Sys然后按下 Tab 鍵,則自動(dòng)補(bǔ)全, 然后再輸入“.o”,則會(huì)自動(dòng)補(bǔ)全方法, 在補(bǔ)全“System.out.”后按下 Tab 鍵,接下來就會(huì)列出當(dāng)前類的所有的 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. 列出到目前為止當(dāng)前 session 里所有有效的代碼片段

jshell> /list 

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

7. 列出到目前為止當(dāng)前 session 里所有方法

jshell> /methods 
|    String twice(String)

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

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

JDK11 | 第二篇 : JShell 工具

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

9. 從外部加載源代碼

如果在外部已經(jīng)有寫好的 Java 文件,可以使用/open 命令導(dǎo)入到 JShell 環(huán)境中,例如現(xiàn)在有一個(gè)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


本文標(biāo)題:JDK11|第二篇:JShell工具
本文地址:http://aaarwkj.com/article40/goojho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站收錄動(dòng)態(tài)網(wǎng)站、網(wǎng)站內(nèi)鏈、關(guān)鍵詞優(yōu)化、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
懂色av免费在线播放| 亚洲欧美午夜福利视频| 久久精品一区二区日韩| 亚洲三级成人一区在线| 熟妇一区二区在线播放| 高清av在线国产成人精品自拍| 欧美精品日韩中文字幕在| 欧美日韩欧美日韩一区二区| 国产午夜精品福利爽爽| 中文字幕日韩人妻av| 亚洲精品亚洲一区亚洲二区| 人妻少妇麻豆中文字幕久久精品| 蜜臀av在线播放黑丝| 未满十八禁止在线播放| 亚洲精品熟女av影院| 国产精品毛片视频一区二区| 久久精品国产亚洲av麻豆她| 久久精品国产欧美日韩| 在线欧美亚洲观看天堂| 91欧美精品综合在线| 狠狠综爱五月天的婷婷| 天天操夜夜操夜夜操精品| 中文字幕免费日本在线| 国产免费成人黄视频网站| 国产自偷一区二区三区| 最新国产不卡一区二区| 日韩欧美一二区久久麻豆| 婷婷六月亚洲激情综合| 风流少妇奶真白摸的好爽| 欧美一区二区欧美精品| 2023天天操夜夜操| 在线观看国产精品女主播户外麻豆| 好色人妻在线播放中文字幕| 人妻系列日本在线播放| 亚洲黄色手机在线网站| 欧美精品激情在线不卡| 日韩一区二区三级电影| 久热伊人精品国产中文| 中文字幕日韩人妻一二三区| 成人黄色av网站在线观看| 国产又黄又粗的视频|