📜  JDB-断点

📅  最后修改于: 2020-11-13 04:47:30             🧑  作者: Mango


本章介绍了断点的概念以及如何在程序中设置断点。断点会在调试时在特定代码行中显式停止或暂停程序的执行。在执行程序时获取有关程序变量的知识很有用。

句法

以下命令在特定行号处设置断点:

> stop at :

以下命令在特定方法或特定变量上设置断点:

> stop in :< 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()函数处停止。

断点

执行在main方法的第一行停止,即“ int a = 5,b = 6;”。或代码中的第11行。您可以在输出中观察此信息。

步骤4:继续执行

以下命令继续执行程序:

cont

它为您提供了剩余的执行部分,并输出如下:

> Add:11
The application exited
\>