- IntelliJ IDEA 教程
- IntelliJ IDEA - 首頁
- IntelliJ IDEA - 簡介
- 安裝和配置
- IntelliJ IDEA - 熟悉環境
- 建立第一個 Java 專案
- IntelliJ IDEA - 深入探究
- IntelliJ IDEA - 深入探究編輯器
- IntelliJ IDEA - 程式碼重構
- IntelliJ IDEA - 執行專案
- IntelliJ IDEA - 構建工具
- IntelliJ IDEA - 單元測試
- IntelliJ IDEA - 除錯
- IntelliJ IDEA - 效能分析
- IntelliJ IDEA - 版本控制
- IntelliJ IDEA - 資料庫
- 從 NetBeans 遷移
- IntelliJ IDEA - 從 Eclipse 遷移
- IntelliJ IDEA 資源
- IntelliJ IDEA - 快速指南
- IntelliJ IDEA - 有用資源
- IntelliJ IDEA - 討論
IntelliJ IDEA - 除錯
偵錯程式使應用程式除錯變得更加容易。使用偵錯程式,我們可以在程式的某個特定點停止執行,檢查變數,單步進入函式,以及執行許多其他操作。IntelliJ 提供了內建的 Java 偵錯程式。
斷點
斷點允許在程式執行的特定點停止。可以透過將滑鼠懸停在編輯器邊距區域並單擊來設定斷點。
斷點用紅色圓圈符號表示。例如,在第 3 行設定了斷點。
請參考以下步驟以瞭解斷點的運作方式:
右鍵單擊紅色圓圈符號。
選擇“更多”選項。
要刪除斷點,只需單擊相同的符號即可。
請按照以下步驟啟動偵錯程式:
- 導航到“執行”選單。
- 選擇“除錯”選項。
單步進入
在除錯過程中,如果遇到函式並且選擇了“單步進入”操作,則偵錯程式將停止該函式的每個點的程式執行,就像該函式啟用了除錯一樣。
例如,當程式執行到達第 9 行時,如果我們選擇“單步進入”操作,那麼它將在**sayGoodBye()** 函式中的每一行停止執行。
單步跳出
“單步跳出”操作與“單步進入”操作完全相反。例如,如果您在上述場景中執行“單步跳出”操作,則偵錯程式將從**sayGoodBye()** 方法返回並從第 10 行開始執行。
單步跳過
“單步跳過”操作不會進入函式,而是跳到下一行程式碼。例如,如果您位於第 9 行並執行“單步跳過”操作,它將把執行移動到第 10 行。
恢復程式
“恢復程式”操作將繼續執行程式,並忽略所有斷點。
停止操作
“停止”操作有助於停止偵錯程式。
智慧單步進入
在除錯過程中,我們有時可能會到達呼叫多個方法的程式碼行。在除錯這些程式碼行時,偵錯程式通常允許我們使用“單步進入”並引導我們遍歷所有子函式,然後返回到父函式。但是,如果我們只想單步進入一個子函式怎麼辦?使用智慧單步進入,它允許我們選擇要單步進入的函式。
現在,讓我們建立一個包含以下程式碼行的 Java 類:
public class HelloWorld {
public static void main(String[] args) {
allFunctions();
}
static void allFunctions() {
System.out.println(function1() + " " + function2() + " " + function3());
}
static String function1() {
return "function1";
}
static String function2() {
return "function2";
}
static String function3() {
return "function3";
}
}
在上面的程式碼中,**allFunctions()** 呼叫了另外 3 個函式。讓我們在此函式處設定斷點。請按照以下步驟執行智慧單步進入:
- 轉到“執行”
- 選擇“智慧單步進入”。
- 選擇要進入的子函式。
檢查變數
在除錯過程中,IntelliJ 會在編輯器視窗中顯示變數的值。我們也可以在“除錯”視窗中檢視相同的資訊。
計算表示式
“計算表示式”允許動態計算表示式。請按照以下步驟執行此操作:
在偵錯程式中啟動應用程式。
導航到“執行->計算表示式”。
輸入表示式。在下面給出的示例中,變數“i”的當前值為 0;因此,表示式“i > 100”將計算為 false。