📅  最后修改于: 2020-11-13 04:45:37             🧑  作者: Mango
调试是一种技术过程,用于查找和删除程序中的错误或缺陷并获得预期的结果。调试包括测试和监视。当程序的子单元紧密耦合时,这非常复杂。我们可以使用遵循规定API的调试器工具来调试程序。调试器使您可以遍历代码的各个方面,检查所有元素,并删除错误(如有)。
有多种调试Java程序的技术。旧的调试方法是在每个段的末尾使用print语句,这将在控制台上打印trace语句。看一下下面的代码。
pubic class Add
{
public static void main(String ar[])
{
int a = ar[0];
system.out.println("A : " + a);
int b = ar[1];
system.out.println("B : " + b);
int c = a + b;
system.out.println("C = a + b : " + c);
}
}
在这里,我们有一个将两个数字相加并输出输出的程序。请注意,在每个步骤中,我们都引入了一条print语句,该语句在控制台上打印程序的状态。这是调试程序的传统方法。
此外,我们还有一些高级概念可用于调试程序,例如:
我们可以使用多种方法来调试程序:
以下是市场上可用的Java调试器的一些示例:
本教程介绍了如何使用命令行调试器jdb 。
Java调试器(JDB)是Java类在命令行中调试程序的工具。它实现了Java Platform Debugger Architecture。它有助于使用Java调试接口(JDI)检测和修复Java程序中的错误。
以下体系结构定义了JDB在JDK中的角色。它主要包含三个单元:
它是由VM实现的本机编程接口。它提供了检查和调试VM上运行的应用程序状态的方法。它允许一个实施程序(VM实施程序),该实施程序可以轻松地包含在调试体系结构中。它还使用称为JDWP的第三方渠道进行通信。
它定义了信息的格式以及在调试进程与调试器前端之间传递的请求。拥有JDWP的主要目的是允许调试对象和调试器在单独的VM或单独的平台上运行时进行通信。
它是作为前端实现的高级Java接口。它在用户代码级别定义变量信息。建议对所有调试器开发使用JDI层。它使用JDWP与被调试JVM进行通信。