首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

MyEclipse 斷點調試全攻略:從入門到進階技巧

     編輯:Java 相關知識

基礎操作速查

快捷鍵功能說明
F5Step Into進入當前行執行的方法內部
F6Step Over執行當前行,跳至下一行(不進入方法)
F7Step Return執行完當前方法並返回調用處
F8Resume繼續執行至下一個斷點或程序結束

進階斷點類型與技巧

1. 多樣化斷點類型

  • Line Breakpoint:最常用的行斷點
  • Field Watchpoint:監視欄位讀寫(屬性讀取/修改時暫停)
  • Method Breakpoint:方法進入/退出時暫停
  • Exception Breakpoint:拋出特定異常時暫停(捕獲未處理異常利器)

2. 條件斷點與 Hit Count

  • Hit Count:設定觸發次數(如循環第 100 次暫停),右鍵斷點 → Hit Count 設定
  • Condition:輸入布林表達式(如 i > 100 && list.size() > 0),僅條件為 true 時暫停

3. 線程暫停策略

  • Suspend Thread:僅暫停當前線程(多線程調試推薦)
  • Suspend VM:暫停整個虛擬機(預設,可能導致其他線程假死)

實用調試視圖與操作

Variables 視圖

  • 右鍵變量 → Change Value:動態修改變量值,即時驗證邏輯分支
  • 支援展開物件檢視內部欄位、集合元素

Expressions / Inspect / Watch

  • Inspect:臨時計算表達式值(Ctrl+Shift+I)
  • Watch:持續監視表達式隨執行變化

熱替換

修改代碼後 Save & Build → Resume,Eclipse 會嘗試熱替換類定義,無需重啟調試會話(結構性變更除外)。

實戰演練:Step Into / Over / Return 流程圖解

public static void main(String args[]) {
    MyDate aa = new MyDate();
    aa.addDays(day);        // (1) 斷點在此
    System.out.println("eeeeeeeeeeeeeee"); // (2)
}

public String addDays(int more_days) {
    System.out.println("1"); // (3)
    String result = "";      // (4)
    System.out.println("2"); // (5)
    return result;
}
  • 在 (1) 處斷點,F5 → 進入 addDays 停在 (3)
  • F6 → 執行 (3) 停在 (4)
  • F7 → 執行完方法返回,停在 (2)

Step Filtering 過濾器

路徑:Window → Preferences → Java → Debug → Step Filtering

勾選不想進入的包(如 java.*, javax.*),單步調試時自動跳過這些類,專注業務代碼。

總結

掌握 MyEclipse 調試的核心在於:熟練使用四大單步快捷鍵、善用條件斷點與 Hit Count 定位循環問題、靈活切換線程暫停模式、利用 Variables/Watch 動態觀察與修改狀態、以及熱替換加快驗證迭代。將這些技巧內化為肌肉記憶,調試效率將成倍提升。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved