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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

大牛都会用的 IDEA 调试技巧!!!

發布時間:2025/3/20 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 大牛都会用的 IDEA 调试技巧!!! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ? 導讀? ? ? ??

前天面試了一個985高校的實習生,問了他平時用什么開發工具,他想也沒想的說IDEA,于是我拋磚引玉的問了一下IDEA的調試用過吧,你說說怎么設置斷點條件?那孩子懵了,想了好一會對我說沒用過,甚至都沒聽說過這個。

作為一名資深的老司機,IDEA調試可以說是家常便飯,如果不會debug,我都不信你讀過源碼,就別和我說原理了,直接pass掉。

? ? ? ? 基本界面? ? ? ??

IDEA的Debug運行模式如下圖:

以Debug模式啟動服務,左邊的一個按鈕則是以Run模式啟動。在開發中,我一般會直接啟動Debug模式,方便隨時調試代碼。?

斷點:在左邊行號欄單擊左鍵,或者快捷鍵Ctrl+F8 打上/取消斷點,斷點行的顏色可自己去設置。?

Debug窗口:訪問請求到達第一個斷點后,會自動激活Debug窗口。如果沒有自動激活,可以去設置里設置。

調試按鈕:一共有8個按鈕,調試的主要功能就對應著這幾個按鈕,鼠標懸停在按鈕上可以查看對應的快捷鍵。

服務按鈕:可以在這里關閉/啟動服務,設置斷點等。?

方法調用棧:這里顯示了該線程調試所經過的所有方法,勾選右上角的[Show All Frames]按鈕,就不會顯示其它類庫的方法了,否則這里會有一大堆的方法。?

Variables:在變量區可以查看當前斷點之前的當前方法內的變量。?

? Watches:查看變量,可以將Variables區中的變量拖到Watches中查看。

? ? ? ? 變量查看? ? ? ??

在調試過程中往往需要觀察變量的變化來判斷業務邏輯,我們可以在以下的四個地方觀察。

最常用的變量的觀察區域variables

IDEA中最人性化的地方之一,會將變量的值陰影顯示在變量的后面。

watch區域,眼鏡的形狀,一般不會展開。如下圖:

點擊'+'號可以新增需要觀察的變量,點擊'-'號可以刪除。

鼠標懸停在變量上也會出現變量的值,點擊展開即可查看。

? ? ? ? 計算表達式? ? ? ??

在調試業務邏輯的時候一般總會遇到某個條件或者某個變量的計算值的還不知道的情況下就需要判斷下一行代碼,那么此處就需要用到計算表達式的功能。計算表達式有兩種方法,如下:

選擇需要計算的代碼,鼠標右鍵---->Evaluate Expression--->Evaluate即可計算。

直接點擊計算器形狀控件即可彈出計算的窗口,將代碼復制進去即可,注意復制進去的代碼一定要符合邏輯,比如局部變量一定要是已經聲明的。

? ? ? ? 斷點條件設置? ? ? ??

對于新手要看Spring源碼的話,再遇到調試UserService的doGetBean的方法時可能要崩潰,因為doGetBean在容器啟動的時候可能會被調用幾十次,你把斷點打在doGetBean方法體中能讓你生不如死。

1. 設置斷點條件有兩種方式:

直接在斷點上右鍵,添加condition條件即可。

view breakpoints(ctrl+shift+F8)顯示所有的斷點,在condition中添加條件即可。

2. 異常斷點設置的方式

設置了異常斷點后,比如空指針異常,在程序出現需要攔截的異常時會自動定位到指定的行。如下圖:

①?ctrl+shift+F8顯示所有斷點,點擊+號添加Java Exception Breakpoints。

debug運行,一旦有代碼出現該異常,會自動定位到指定代碼。

? ? ? ? 線程切換? ? ? ??

通常我們在調試的時候,一個請求過來被攔截了,此時想要發起另外一個請求是無法重新發的,因為另外一個請求被阻塞了,只有當前線程執行完成之后才會走其他的線程。在IDEA中可以改變一下阻塞級別,有兩種方法:

1. 斷點上右鍵--->選擇Thread---->Make Default,如下圖:

2. 顯示所有斷點(crtl+shift+F8),選中某一個斷點,選擇Thread,Make Default即可。如下圖:

設置了阻塞級別,此時就可以在線程切換了,如下圖:

? ? ? ? 強制拋異常? ? ? ??

這是IDEA 2018年加入的新功能,可以直接在調試中拋出指定的異常。使用方法跟上面的棄棧幀類似,右擊棧幀并選擇Throw Exception,然后輸入拋異常的代碼,比如throw new NullPointerException,操作如下圖:

? ? ? ? 強制返回? ? ? ??

這是IDEA2015版時增加的功能,類似上面的手動拋異常,只不過是返回一個指定值罷了。使用方法跟上面也都類似,右擊棧幀并選擇Force Return,然后輸入要返回的值即可。如果是void的方法那就更簡單了,連返回值都不用輸。如下圖:

至此文章IDEA的一些調試技巧就介紹完了,不是很全,還有很多強大的功能沒有介紹,如果讀者覺得陳某寫的不錯,有所收獲的幫忙點個贊,分享一下,謝謝!!!

總結

以上是生活随笔為你收集整理的大牛都会用的 IDEA 调试技巧!!!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线观看日本视频 | 天天插天天干天天操 | 久久久剧场 | 国产中文网| 欧美一区中文字幕 | 欧美五月激情 | 黑人玩弄人妻一区二区三区四 | 天天毛片| 亚洲熟女乱色综合亚洲av | 男女啪动最猛动态图 | 亚洲乱码国产乱码精品精 | 国产精品国产三级国产在线观看 | 黄色网络在线观看 | 第一毛片| 自拍欧美亚洲 | 国产伦精品一区二区三区四区免费 | 亚洲三区在线播放 | 少妇学院在线观看 | 亚洲一区偷拍 | 亚洲性图一区二区 | 国产中文字幕精品 | 国产欧美一区二区精品性色超碰 | 亚洲理伦电影 | 精品乱 | 精品亚洲一区二区三区四区五区 | 人人澡人人澡人人 | 9i精品福利一区二区三区 | 久久亚洲高清 | 国产777| 一区二区三区资源 | 日韩美女视频 | 性开放视频 | 国产精品高潮呻吟久久久久久 | 亚洲日本在线观看视频 | 国产探花精品在线 | 99国产免费 | a级黄毛片 | 免费a在线| 丁香婷婷久久 | 亚洲第九十七页 | 狠狠操女人 | 人人模人人干 | 蜜桃在线一区 | 狂野欧美性猛交免费视频 | 国产激情毛片 | www免费网站在线观看 | 91社区在线播放 | 欧美xxxx喷水 | 成人国产精品免费观看动漫 | 亚洲精品白浆高清久久久久久 | 影音先锋久久久 | 免费看欧美大片 | 老熟女一区二区三区 | 日韩二级片 | 精品国产乱码久久久久久蜜臀网站 | 天天做天天干 | 久久久久久av无码免费看大片 | 久久久久久久久精 | 欧美高清视频一区二区三区 | 天天操夜操 | 日韩午夜在线观看 | 成人日韩精品 | 嫩草研究院在线 | 精品国产一区二区三区久久久蜜臀 | 97精品人妻一区二区三区蜜桃 | 97日日夜夜 | 欧美一级爆毛片 | 中文字幕精品一区久久久久 | 亚洲午夜在线观看 | 新91在线 | 偷拍综合网 | 大尺度舌吻呻吟声 | 人妻熟女一区二区三区app下载 | 国产第113页 | 日韩欧美亚洲一区二区三区 | 熟女人妻一区二区三区免费看 | www日本com| 少妇一级1淫片 | 午夜一区二区三区免费 | 欧美日韩高清丝袜 | 成年人在线观看视频 | 男女叼嘿视频 | 尤物网在线 | 天天操综合 | 久久精品99久久久久久久久 | 色欲久久久天天天综合网精品 | 久久久久久久久亚洲 | 久久精品99国产 | 国产欧美精品在线观看 | 欧美巨乳在线 | 一区二区三区在线免费观看 | 99精品人妻少妇一区二区 | 成人国产精品久久久 | 国产精品a级 | 美女野外找人搭讪啪啪 | 亚洲精品嫩草 | 色婷婷av一区二区三区gif | 亚洲啊啊啊啊啊 | 免费网站观看www在线观看 |