- 導航: Step into Selection
第二個是“Step into Selection”. 這也是很簡單,但很多人使用的一個。要使用它,你只需要按 Ctrl+Alt 同時點擊一個你想運行到的方法名。非常方便,非常快速。相比“Step Into”這個非常方便,想想你像跟蹤進一個有很多參數的函數,如果用“Step Into”你必須進入,退出每個參數計算過程,才能進入到你真正想進的函數。“Run to line”也是很棒的特性。只需要把游標放在你想運行到的哪一行前面,然後按“CTRL+R”就可以了。
- 導航器:使用鍵盤
如果避免使用滑鼠的話,你的操作速度會更快。你至少應該如下的快速鍵:
F5 – “單步進入”
F6 – “逐步執行並跳過”
F7 – “逐步執行並返回”
F8 – “繼續執行”
Ctrl+Shift+B – “添加斷點”
Ctrl+Shift+I – “檢查”
- 斷點視圖:Watchpoints
如果改變這個變數會有什麼結果?! 有時候建立一個watchpoint對於調試會非常有用。調試器會停止,不管這個被觀察的欄位是被修改還是被讀取 - 你可以自己來配置決定。你只需雙擊一個欄位,然後你就可以在斷點視圖中看到watchpoint,並且可以編輯它的屬性。你甚至可以一個訪問次數,這意味著當變數被訪問的次數達到這個數量的時候,調試器會停止。這對於普通的斷點也適用。
- 友好的可讀的對象
變數視圖是使用對象的toString方法來現實對應的值。因為這個原因,如果提供友好的toString方法實現,對調試來說會非常有用。在javadoc中關於java.lang.Object的預設toString實現,也是這樣推薦的:
| 返回一個表示該對象的字串。通常<code>toString</code>方法返回這麼一個字串,“字面表示”該對象。返回結果必須是一個簡潔卻富含可表示該對象的資訊,並且友好可讀取。我們推薦所有的子類都覆蓋這個方法。 |
你可以參考commons-lang中的 ToStringBuilder。它提供一些功能來編寫 (引用自javadoc ) "良好並連貫” 的toString方法。
預設的ToString
預設的ToStringBuilder例子
ToStringBuilder例子 – 多行文本風格
如果你不能修改toString實現,例如你現在使用架構或者一個外部的API,你可以有另外一個選擇,在Eclipse中建立一個“Detail Formatter”。你需要在變數視圖中右擊一個對象,並點擊“New Detail Formatter…”。然後你就可以輸入一些代碼,用於展現這個對象。
原文連結:http://www.oschina.net/translate/again-10-tips-on-java-debugging-with-eclipse