Eclipse調試Java的10個技巧

1、條件斷點

想象一下我們平時如何添加斷點,通常的做法是雙擊行號的左邊。在debug視圖中,BreakPoint View將所有斷點都列出來,但是我們可以添加一個boolean類型的條件來決定斷點是否被跳過。如果條件爲真,在斷點處程序將停止,否則斷點被跳過,程序繼續執行。

 

2、異常斷點

在斷點view中有一個看起來像J!的按鈕,我們可以使用它添加一個基於異常的斷點,例如我們希望當NullPointerException拋出的時候程序暫停,我們可以這樣:

 

3、觀察點

這個特性我非常喜歡,他允許當一個選定的屬性被訪問或者被更改的時候程序執行暫停,並進行debug。最簡單的辦法是在類中聲明成員變量的語句行號左邊雙擊,就可以加入一個觀察點。

 

4、查看變量

在選中的變量上使用Ctrl+Shift+d 或者 Ctrl+Shift+i可以查看變量值,另外我們還可以在Expressions View中添加監視。

 

5、改變變量值

我們可以在Debug的時候改變其中變量的值。在Variables View中可以按下圖所示操作。



6、在Main方法中停止
在Run/Debug設置中,我們可以按如下圖所示的啓用這個特性。程序將會在main方法的第一行停住


7、環境變量
我們可以很方便的在Edit Conriguration對話框中添加環境變量


8、Drop to frame
這個功能非常酷,是我第二個非常喜歡的功能,Drop to frame就是說,可以重新跳到當前方法的開始處重新執行,並且所有上下文變量的值也回到那個時候。不一定是當前方法,可以點擊當前調用棧中的任何一個frame跳到那裏(除了最開始的那個frame)。主要用途是所有變量狀態快速恢復到方法開始時候的樣子重新執行一遍,即可以一遍又一遍地在那個你關注的上下文中進行多次調試(結合改變變量值等其它功能),而不用重來一遍調試到哪裏了。當然,原來執行過程中產生的副作用是不可逆的(比如你往數據庫中插入了一條記錄)。


9、Step 過濾
當我們在調試的時候摁F5將進入方法的內部,但這有個缺點有的時候可能會進入到一些庫的內部(例如JDK),可能並不是我們想要的,我們可以在Preferences中添加一個過濾器,排除指定的包。


10、進入、跳過、返回

其實這個技巧是debug最基本的知識。

  • F5-Step Into:移動到下一步,如果當前的行是一個方法調用,將進入這個方法的第一行。(可以通過第九條來排除)

  • F6-Step Over:移動到下一行。如果當前行有方法調用,這個方法將被執行完畢返回,然後到下一行。

  • F7-Step Return:繼續執行當前方法,噹噹前方法執行完畢的時候,控制將轉到當前方法被調用的行。
  • F8-移動到下一個斷點處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章