调试是查找和删除程序中的错误或缺陷并获得预期结果的技术过程.调试包括测试和监控.当程序的子单元紧密耦合时,它非常复杂.我们可以使用遵循规定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语句,用于在控制台上打印程序的状态.这是调试程序的传统方法.
此外,我们还有可用于调试程序的高级概念,例如:
stepping
断点,
例外或观察点.
我们可以使用各种方法调试程序:
使用Java字节码(Java代码的编译版本)
在程序中使用注释
将类附加到正在运行的程序
远程调试
按需调试
优化代码调试
以下是市场上可用的Java调试器的一些示例:
Eclipse,Netbeans等IDE包含自己的调试器(Visual cafe,Borland,JBuilder)
独立调试器GUI(如Jikes, Java平台调试器,和JProbe)
命令行调试器(Sun的JDB)
记事本或VI驱动(堆栈跟踪)
本教程介绍如何使用命令行调试器, jdb .
Java调试器(JDB)是Java类在命令行中调试程序的工具.它实现了Java平台调试器体系结构.它有助于使用Java调试接口(JDI)检测和修复Java程序中的错误.
以下架构定义了角色JDK中的JDB.它主要包含三个单元:
Java虚拟机工具接口(JVM TI)
Java调试接线池(JDWP)
Java调试器接口(JDI)
它是由VM实现的本机编程接口.它提供了检查和调试VM上运行的应用程序状态的方法.它允许实现者(VM实现者)可以轻松地包含在调试体系结构中.它还使用名为 JDWP 的第三方渠道进行通信.
它定义了信息的格式和调试对象进程和调试器前端之间传递的请求.拥有JDWP的主要目的是允许调试对象和调试器在单独的VM或不同平台下运行时进行通信.
它是作为前端实现的高级Java接口.它在用户代码级别定义变量信息.建议对所有调试器开发使用JDI层.它使用JDWP与调试对象JVM进行通信.