断点
- 断点的作用:程序运行到断点会停止
- 设置断点:在行数右边双击打上断点,再次双击取消断点
![](https://i-blog.csdnimg.cn/blog_migrate/f5d3f2b7b4ec9754e484177405a58d82.png#pic_center)
9和13行打了断点
Debug的使用
以如下代码使用为例
package com.neu.debugtest;
public class DebugTest {
public static void main(String[] args) {
int j = 5;
int i = 25;
System.out.println("i = "+ i + ", j = "+ j);
DebugTest debugTest =new DebugTest();
int max = debugTest.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;
}
}
- 不能使用普通的run,需要使用debug
![](https://i-blog.csdnimg.cn/blog_migrate/2b084bf1d05ffc555f1933fd3f627592.png#pic_center)
用debug运行
- 界面介绍
![](https://i-blog.csdnimg.cn/blog_migrate/f9612ebeab3da8bf69391bd808accbb9.png#pic_center)
debug界面
-
2.1第一部分
第一部分显示了代码运行情况,光标在哪运行到了哪一行,但光标在的一行还没运行。如debug界面图所示,光标到了第九行,此时程序运行了前八行,第九行还没运行。 -
2.2第二部分
第二部分显示了程序运行时产生的变量。 -
2.3第三部分
第三部分为操作按钮
step overstep over:运行到程序的下一行,不会进入到程序涉及的方法内部(方法内没有断点的话);如果该行程序涉及的方法内有断点,则会直接执行到方法内的断点处。
例如:在第9行打断点,其他不打,则程序运行到第9行停止,step over后运行到第10行,而不是进入到getMax方法内;如果第9行打上断点,第20行打上断点,程序运行到第9行后,step over则会进入getMax方法内,并直接运行到第20行。
step intostep into:如果程序不涉及任何方法,则运行到下一行,如果程序涉及方法(包括系统自带和自己定义),则进入到方法内一行一行运行
step returnstep return:直接运行到方法末尾,从方法中跳出。
resumeresume:运行到下个断点处,如果没有下个断点,则运行完全部程序。