IntelliJ IDEA - 除錯



偵錯程式使應用程式除錯變得更加容易。使用偵錯程式,我們可以在程式的某個特定點停止執行,檢查變數,單步進入函式,以及執行許多其他操作。IntelliJ 提供了內建的 Java 偵錯程式。

斷點

斷點允許在程式執行的特定點停止。可以透過將滑鼠懸停在編輯器邊距區域並單擊來設定斷點。

斷點用紅色圓圈符號表示。例如,在第 3 行設定了斷點。

Breakpoints

請參考以下步驟以瞭解斷點的運作方式:

  • 右鍵單擊紅色圓圈符號。

  • 選擇“更多”選項。

  • 要刪除斷點,只需單擊相同的符號即可。

請按照以下步驟啟動偵錯程式:

  • 導航到“執行”選單。
  • 選擇“除錯”選項。

單步進入

在除錯過程中,如果遇到函式並且選擇了“單步進入”操作,則偵錯程式將停止該函式的每個點的程式執行,就像該函式啟用了除錯一樣。

例如,當程式執行到達第 9 行時,如果我們選擇“單步進入”操作,那麼它將在**sayGoodBye()** 函式中的每一行停止執行。

Program Execution

單步跳出

“單步跳出”操作與“單步進入”操作完全相反。例如,如果您在上述場景中執行“單步跳出”操作,則偵錯程式將從**sayGoodBye()** 方法返回並從第 10 行開始執行。

Step Out

單步跳過

“單步跳過”操作不會進入函式,而是跳到下一行程式碼。例如,如果您位於第 9 行並執行“單步跳過”操作,它將把執行移動到第 10 行。

Step Over

恢復程式

“恢復程式”操作將繼續執行程式,並忽略所有斷點。

Breakpoints

停止操作

“停止”操作有助於停止偵錯程式。

Stop Action

智慧單步進入

在除錯過程中,我們有時可能會到達呼叫多個方法的程式碼行。在除錯這些程式碼行時,偵錯程式通常允許我們使用“單步進入”並引導我們遍歷所有子函式,然後返回到父函式。但是,如果我們只想單步進入一個子函式怎麼辦?使用智慧單步進入,它允許我們選擇要單步進入的函式。

現在,讓我們建立一個包含以下程式碼行的 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 個函式。讓我們在此函式處設定斷點。請按照以下步驟執行智慧單步進入:

  • 轉到“執行”
  • 選擇“智慧單步進入”。
  • 選擇要進入的子函式。
Child Function

檢查變數

在除錯過程中,IntelliJ 會在編輯器視窗中顯示變數的值。我們也可以在“除錯”視窗中檢視相同的資訊。

Inspecting Variables

計算表示式

“計算表示式”允許動態計算表示式。請按照以下步驟執行此操作:

  • 在偵錯程式中啟動應用程式。

  • 導航到“執行->計算表示式”。

  • 輸入表示式。在下面給出的示例中,變數“i”的當前值為 0;因此,表示式“i > 100”將計算為 false。

Evaluate Expression
廣告

© . All rights reserved.