JDB - 斷點



本章解釋了斷點的概念以及如何在程式中設定斷點。斷點在除錯過程中會在程式執行的特定程式碼行引入一個明確的停止或暫停。它有助於在程式執行過程中獲取有關程式中變數的知識。

語法

以下命令在特定行號設定斷點

> stop at <class name>:<Line no>

以下命令在特定方法或特定變數上設定斷點

> stop in <class name>:< Method name | Variable name>

示例

以下示例演示如何在類中設定斷點。

public class Add
{
   public int addition( int x, int y)
   {
      int z = x + y;
      return z;
   }
   
   public static void main( String ar[ ] )
   {
      int a = 5, b = 6;
      Add ob = new Add();
      
      int c = ob.addition(a,b);
      System.out.println("Add: " + c);
   }
}

將以上檔案儲存為 Add.java。使用以下命令編譯此檔案

\>javac Add.java

除錯

讓我們以除錯為例。在這裡,我們透過在 main() 上設定斷點來啟動除錯過程。以下是除錯過程中需要遵循的步驟

步驟 1:啟動 JDB 會話

以下命令在 Add 類上啟動 JDB 會話以進行除錯

\> jdb Add

步驟 2:設定斷點

以下命令在 Add 類的 main() 方法上設定斷點。

> stop in Add.main

如果斷點設定成功,您將看到以下輸出

Deferring breakpoint Add.main.
It will set after the class is loaded.
>

步驟 3:開始除錯

以下命令開始執行 Add 類

> run Add

如果執行此命令,您將看到以下輸出。在此輸出中,您會發現執行在斷點位置停止,即在 main() 函式處。

Breakpoints

執行在 main 方法的第一行停止,即在 "int a=5, b=6;" 或程式碼中的第 11 行。您可以在輸出中觀察到此資訊。

步驟 4:繼續執行

以下命令繼續程式執行

cont

它為您提供其餘執行部分和輸出,如下所示

> Add:11
The application exited
\>
廣告

© . All rights reserved.