日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

你不知道的 IDEA Debug 调试小技巧!

發(fā)布時(shí)間:2024/4/11 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 你不知道的 IDEA Debug 调试小技巧! 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

點(diǎn)擊上方“朱小廝的博客”,選擇“設(shè)為星標(biāo)”

后臺回復(fù)”加群“加入公眾號專屬技術(shù)群

來自:http://suo.im/4vlcHB

1、多線程調(diào)試斷點(diǎn)

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

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

2、回退斷點(diǎn)

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

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

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

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

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

3、條件斷點(diǎn)

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

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

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

4、臨時(shí)斷點(diǎn)

所謂臨時(shí)斷點(diǎn)就是只斷一次,IDEA默認(rèn)斷點(diǎn)會一致存在。如果你只需要暫停一次,那么使用臨時(shí)斷點(diǎn)會比較方便,因?yàn)闀和R淮沃髷帱c(diǎn)就自動(dòng)消失了,不用手動(dòng)取消。

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

5、求值計(jì)算

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

這個(gè)功能可以在debug時(shí)在debug窗口打開:

打開后是這樣的:

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

想知道更多?描下面的二維碼關(guān)注我


怎么加群?:

怎么免費(fèi)加入知識星球:

免費(fèi)資料入口:后臺回復(fù)“666”

朕已閱?

總結(jié)

以上是生活随笔為你收集整理的你不知道的 IDEA Debug 调试小技巧!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。