標籤:
調試不僅可以尋找到應用程式缺陷所在,還可以解決缺陷。對於Java程式員來說,他們不僅要學會如何在Eclipse裡面開發像樣的程式,更需要學會如何偵錯工具。本文介紹了Java程式員必知的10個調試技巧,保證讓你受益匪淺!
在開始之前,推薦大家去看看Eclipse shortcuts這篇文章,它將會給你帶來很多方便。在本文中使用的是Eclipse Juno版(Eclipse 4.2),在開始前給大家提3點建議:
- 不要使用System.out.println作為調試工具
- 把所有涉及到的組件記錄層級啟用並使用
- 使用日誌分析器來讀取日誌
1.條件斷點
如果你不知道如何添加斷點,只需點擊左邊面板(行號前面)斷點即被建立。在調試介面中,“斷點”視圖會把所有被建立的斷點列出來。我們可以給它加一個布爾條件,也就是說,該斷點會被啟用並且如果布爾條件為真,就會執行該斷點,否則將會跳過往下執行。
2.異常斷點
在斷點視圖中,有一個J!標記按鈕!我們可以使用該按鈕來添加一個Java異常斷點。例如,我們想讓程式在遇到null 指標異常(NullPointerException)時,仍然能繼續調試,那麼我們可以使用該按鈕來添加一個異常斷點!
3.監視點
這是一個非常好的功能,當選定的屬性訪問或修改程式時,程式會停止執行並允許進行調試。在Outline視圖中選擇一個類變數並從操作功能表中選擇切換監視點,屬性監視點將會被建立,在斷點(Breakpoints)視圖中會把所有監視點用列表的形式顯示出來。http://www.cnblogs.com/roucheng/
4.評估/檢查
按Ctrl+Shift+D或者Ctrl+Shift+I來顯示選定變數或者運算式的值。我們也可以給一個變數或運算式添加永久觀察點,當程式在調試時,這些觀察點就會在運算式視圖(Expression view)中顯示出來。
5.修改變數值
在調試過程中,我們可以修改變數值。先選好一個變數然後進入變數視圖(Variables view),根據變數類型在其對應的Value列裡輸入值即可。
6.在Main函數裡面停止執行
在運行/調試設定中,編輯配置對話方塊中有“Main”這個選項卡,我們可以勾選“Stop in main”這個複選框。如果選中,那麼在調試一個基於main方法的Java程式時,程式會在main方法第一行位置便停止執行。
7.環境變數
並不是在系統屬性中添加環境變數,我們可以在編輯配置對話方塊中很方便地進行添加。
8.Drop to Frame
這也是我最喜歡的一個功能。調試期間,可以重新跳到呼叫堆疊架構的開始處執行,並且變數值也會回到最初。根據回檔調整堆棧的深度,這個功能的主要用 途是所有變數狀態可以快速回到方法開始執行時候的樣子,然後你可以重新進行一遍一遍執行,這樣就可以在你關注的地方進行多次調試,但是在執行過程中也會產 生一些副作用,比如插入到資料庫裡面的資料是無法刪除的!
9.分布過濾
當我們進入(F5)方法的時候,我們還可以訪問其外部庫(比如java.*),我們可能不需要這個庫,就可以在Perference索引標籤頁面面添加一個過濾器來排除這個包。
10.進入、跳出和返回
我把這個放在最後一點,在調試過程中,這些是必須要瞭解(最好掌握)的東西:
F5——進入:移動到下一個步驟,如果當前行有一個方法調用,該控制項將會跳轉到被呼叫者法的第一行執行。
F6——跳出:移動到下一行。如果在當前行有方法調用,那麼會直接移動到下一行執行。不會進入被呼叫者法體裡面。
F7——返回:從當前方法中跳出,繼續往下執行。
F8——移動到下一個斷點處執行。
10個調試Java的技巧