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

Eclipse Java 程式除錯完整教學:從建立專案到變數監控

     編輯:Java 相關知識

一、建立 Java 專案

  1. 啟動 Eclipse → 資源透視圖**
  2. 導航視圖右鍵 → New → Java Project**
  3. 專案名:Hello → Next → Finish
  4. 提示切換至 Java 透視圖** → Yes

二、建立類別與主方法

  1. 專案右鍵 → New → Class**
  2. Package: org.eclipseguide.hello
  3. Name: HelloWorld
  4. 勾選 public static void main(String[] args) → Finish

三、編寫測試程式碼

public class HelloWorld {
    public static void main(String[] args) {
        say("Hello, world!");
    }

    public static void say(String msg) {
        for (int i = 0; i < 3; i++) {
            System.out.println(msg);
        }
    }
}

四、執行程式

  • 編輯器全選 → 右鍵 Run As → Java Application**
  • Console 視圖顯示輸出:
    Hello, world! × 3

注意:Eclipse JDT 內建增量編譯器,儲存即編譯,無需手動 javac。

五、除錯模式啟動

  1. 編輯器左側灰色邊欄雙擊(第 say() 呼叫行) → 出現 藍色圓點** = 斷點
  2. 編輯器全選 → 右鍵 Debug As → Java Application**
  3. Eclipse 切換至 Debug 透視圖**,執行暫停於斷點

六、Debug 透視圖核心視圖

視圖功能
Debug執行緒堆疊、變數狀態、控制按鈕(繼續/暫停/終止/單步/跳入/跳出)
Variables當前作用域區域變數、this、參數值
Expressions手動加入監控運算式(支援修改值、轉為 Watch)
Breakpoints管理所有斷點(啟用/停用/條件/命中計數)
Console標準輸出/錯誤、輸入

七、單步執行技巧

  • Step Into (F5):進入方法內部(如 say())
  • Step Over (F6):執行當前行,不進入方法
  • Step Return (F7):執行至當前方法返回
  • Resume (F8):繼續執行至下一斷點或結束
  • Step Filters:Window → Preferences → Java → Debug → Step Filtering 勾選 java.*, javax.* 等系統包,避免誤入 JDK 原始碼

八、變數檢查與修改

  1. Variables 視圖展開物件 → 查看欄位值
  2. 雙擊值 → 修改(如將 msg 的 char[] 中 'H' 改為 'J')
  3. Console 後續輸出將反映修改:Jello, world!

九、運算式評估

  • Expressions 視圖 → 右鍵 Add Watch Expression** → 輸入 msg.charAt(i)
  • 或在 Display 視圖輸入運算式 → 選取 → 點擊 Inspect** (Ctrl+Shift+I) 查看一次性結果 / Watch** (Ctrl+Shift+W) 加入持續監控

十、條件斷點進階用法

  1. Breakpoints 視圖 → 右鍵斷點 → Breakpoint Properties**
  2. 勾選 Conditional** → 輸入 i == 2
  3. 程式僅在 i == 2 時暫停,極大減少大迴圈除錯次數

十一、熱代碼替換

除錯過程中修改方法體(非簽名),儲存後 Eclipse 自動熱替換至運行中 JVM(支援大多數變更),無需重啟除錯會話。

總結

Eclipse JDT 除錯器提供斷點、單步、變數監控/修改、運算式評估、條件斷點、熱替換等完整工具鏈,是定位邏輯錯誤、效能瓶頸、記憶體洩漏的利器。熟練掌握「斷點 → 單步 → 觀察 → 假設驗證」循環,將除錯效率提升數倍。

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