最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

你不知道的 IDEA Debug調(diào)試小技巧(小結(jié))

 更新時間:2019年10月09日 09:09:07   作者:EamonZzz  
這篇文章主要介紹了你不知道的 IDEA Debug調(diào)試小技巧(小結(jié)),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一、多線程調(diào)試斷點

Intellij IDEAdebug斷點調(diào)試是有一個模式的選擇的,就像下面這張圖,平時我們都使用的是默認的 ALL(在Eclipse中默認是線程模式) ,這種模式我們只能將一個線程斷下來,但其他線程卻已經(jīng)執(zhí)行過了;而將其改為 Thread 后,就可以多個線程都斷下來,并且可以很方便的切換線程的執(zhí)行流程,這就是多線程調(diào)試。

debug控制臺能夠很方便的查看線程的執(zhí)行狀態(tài),也可以很方便的選擇某個線程去執(zhí)行:

二、回退斷點

不知道大伙有沒有遇到這樣一個問題,當我們進行debug時,通常不會進入某個方法一步一步的執(zhí)行,而是選擇性的跳過;當你想要回頭觀察某個變量的值得變化時,而你剛好沒有跟進去,跳過了這個方法,這個時候,變量就被賦值了,我們通常的做法是重來一次。

其實IDEA的調(diào)試功能是非常強大的,我們來看看熟悉的調(diào)試窗口:

使用紅色框框出來的部分,表示當前程序執(zhí)行到哪一塊,哪一部分,你可以嘗試用鼠標點點看,你會發(fā)現(xiàn)編輯器會跳轉(zhuǎn)到對應的代碼中,當然當前斷點的位置通常會在列表的第一條。然后我們使用右鍵單擊,你就可以看到如下圖所示:

或者你也可以在下圖中找到 Drop Frame

在IDEA中,所謂的回退,叫 Drop Frame,選擇Drop Frame后,程序會跳轉(zhuǎn)回調(diào)用當前這個方法的地方,當然已經(jīng)改變的值是不會恢復的。但是當該方法再次被調(diào)用時,你可以觀察到某個變量什么時候被改變,至少我們不用再去重新運行一遍程序。

三、條件斷點

條件斷點就是當滿足某個條件(通常是表達式)時,debug斷點才會生效;這在循環(huán)中debug是非常有用的;例如我們想要在循環(huán)體中調(diào)試:當某個變量滿足某個條件時,需要斷點調(diào)試,來查看詳細的執(zhí)行流程及變化情況。

我們說過,IDEA中的debug功能是非常強大的,要使用條件斷點也非常簡單,下面這張圖片中 Condition中的內(nèi)容代表當nameeamon:23時,程序執(zhí)行到斷點處停下來。

有了條件斷點,這樣一來,那些不相關(guān)和我們不關(guān)心的代碼就可以直接跳過了。

四、臨時斷點

所謂臨時斷點就是只斷一次,IDEA默認斷點會一致存在。如果你只需要暫停一次,那么使用臨時斷點會比較方便,因為暫停一次之后斷點就自動消失了,不用手動取消。

臨時斷點可以通過在打斷點時按住 Alt 或者 option 鍵,然后創(chuàng)建斷點。也可以通過右鍵斷點處,選擇 more 然后在窗口中選中 Remove once hit

五、求值計算

求值計算功能在我們debug過程中,可以很方便的查看程序中所有變量的值,也可以臨時修改程序中變量的值,這個功能能在一定程度上輔助我們進行代碼調(diào)試。

這個功能可以在debug時在debug窗口打開:

打開后是這樣的:

然后你就可以在表達式輸入框中,輸入你想要的操作,比如,查看變量、修改變量(臨時的)、調(diào)用某個方法等;這些操作結(jié)果將會在下方的Result 窗口中輸出。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java字符流緩沖區(qū)詳解

    java字符流緩沖區(qū)詳解

    這篇文章主要為大家詳細介紹了java字符流緩沖區(qū)的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Springboot如何設(shè)置多數(shù)據(jù)源,隨時切換

    Springboot如何設(shè)置多數(shù)據(jù)源,隨時切換

    這篇文章主要介紹了Springboot如何設(shè)置多數(shù)據(jù)源,隨時切換方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • java實現(xiàn)倒序讀取文件功能示例分享

    java實現(xiàn)倒序讀取文件功能示例分享

    這篇文章主要介紹了java實現(xiàn)倒序讀取文件功能示例,需要的朋友可以參考下
    2014-04-04
  • Jenkins 關(guān)閉和重啟詳細介紹及實現(xiàn)

    Jenkins 關(guān)閉和重啟詳細介紹及實現(xiàn)

    這篇文章主要介紹了Jenkins的關(guān)閉、重啟的相關(guān)資料,用jar -jar jenkins.war來啟動jenkins服務(wù)器,那么我們?nèi)绾侮P(guān)閉或者重啟jenkins服務(wù)器呢,這里就給出實現(xiàn)的方法,需要的朋友可以參考下
    2016-11-11
  • IDEA怎么設(shè)置maven配置

    IDEA怎么設(shè)置maven配置

    這篇文章主要介紹了IDEA怎么設(shè)置maven配置,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • Java中線程池自定義實現(xiàn)詳解

    Java中線程池自定義實現(xiàn)詳解

    這篇文章主要為大家詳細介紹了Java如何實現(xiàn)自定義線程池,文中的示例代碼講解詳細,對我們學習Java有一定的幫助,感興趣的小伙伴可以了解一下
    2023-03-03
  • IDEA搭建SpringBoot離線工程的方法

    IDEA搭建SpringBoot離線工程的方法

    這篇文章主要介紹了IDEA搭建SpringBoot離線工程的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • Java 畫時鐘遇到的問題及解決方案

    Java 畫時鐘遇到的問題及解決方案

    我是一個剛?cè)腴T的小菜鳥,希望我寫的東西可以幫助和我一樣剛?cè)腴T的兄弟們少走一些彎路,也希望大佬們可以多指點指點我。感謝!解決在畫時鐘遇到的問題讓我花費不少時間...說兩個困擾我比較久的
    2021-11-11
  • 探索Java I/O 模型的演進

    探索Java I/O 模型的演進

    什么是同步?什么是異步?阻塞和非阻塞又有什么區(qū)別?本文先從 Unix 的 I/O 模型講起,介紹了5種常見的 I/O 模型。而后再引出 Java 的 I/O 模型的演進過程,并用實例說明如何選擇合適的 Java I/O 模型來提高系統(tǒng)的并發(fā)量和可用性。,需要的朋友可以參考下
    2019-06-06
  • SpringBoot定義過濾器、監(jiān)聽器、攔截器的方法

    SpringBoot定義過濾器、監(jiān)聽器、攔截器的方法

    本篇文章主要介紹了SpringBoot定義過濾器、監(jiān)聽器、攔截器的方法,具有一定的參考價值,有興趣的可以了解一下。
    2017-04-04

最新評論

崇阳县| 洮南市| 夏河县| 清远市| 永吉县| 嘉兴市| 庐江县| 东明县| 长顺县| 肇源县| 长子县| 南郑县| 贺州市| 勐海县| 社会| 隆子县| 永川市| 竹北市| 抚顺市| 桃园市| 蒙阴县| 镇平县| 遂平县| 鄂托克旗| 西丰县| 陕西省| 深圳市| 临西县| 阿坝| 丰原市| 句容市| 仁怀市| 新沂市| 贵州省| 阿巴嘎旗| 甘孜| 娄底市| 丁青县| 阿拉善右旗| 阳江市| 镇安县|