以代码运行为例,演示debug功能
package com.codediao.java;
public class DebugTest {
public static void main(String[] args) {
int i = 10;
int j = 20;
System.out.println("i = " + i + ", j = " + j);
DebugTest test = new DebugTest();
int max = test.getMax(i, j);
System.out.println("max = " + max);
}
private int getMax(int k, int m) {
int max = 0;
if (k < m) {
max = k;
} else {
max = m;
}
return max;
}
运行结果:
如果程序出现一个异常其实还算是一个好事,我们通常可以根据这个异常定位到具体的代码行,看他对应的什么异常,做出相应的调整和修改即可。
像上面这个例子,没有提示异常,但结果明显不对,就比较难办一些,此时用Debug效果会更好一些。
当然如果程序比较大时,出现异常时,也可以用Debug。
调试程序的方法:
-
对于初学者,当程序比较小时,可以用输出语句System.out.println()
打印一些变量来调试程序; -
Eclipse的Debug功能
①. 设置断点(双击代码行号,再双击取消)
注意:可以设置多个断点
②. debug as java application
③.常用操作
断点是什么意思?
main方法看做程序的入口,整个main方法执行完之后可以看做出口,正常是一下直接完成。
我们设置的断点,相当于一个一个关卡,打完断点执行后,程序不是一下执行到末尾,而是到断点就停一下,到断点就停一下;
Debug过程:
设置好断点后,右键选择Debug As 运行程序:
提示框选择yes
下面的debug透视图:
可以看到程序执行到第一个断点(第7行)后停止;
左上角红框中按钮为主要debug按钮:
接下来我们可以点击 step over(F6) 按钮,让程序继续执行;
当程序执行完第10行后我们看到变量区max值为10,说明此行代码有问题,即max值出错可能发生在getMax方法中
因为程序已经知道到末尾,所以我们重新debug一下。
点击debug按钮(小臭虫图标)重新开始;
当代码行指示在第10行时,点击step into按钮,进入getMax方法
在max方法中我们同样点击step over按钮,直到代码执行完18行,此时变量区中max=10,找到问题所在,if判断语句有误,将较小值付给了max;
发现错误所在后我们可以直接终止debug程序,进行代码修改;
也可以点击step return按钮,跳出getMax方法,继续debug(如果还想找其他地方的问题)
总结:通过一个的例子,简单的说明了一下eclipse中debug功能的使用,主要是这些按钮的使用,其中每个按钮对应的作用已经在本文中用表格的形式呈现出来了。
最后,希望本文能帮到你~