博客概要
IDEA是一个强大的编译工具,Debug就是其中一个强大的功能,本博文就Debug做一些简单分享,也是备忘+总结~
文章目录
- 博客概要
- Debug介绍
- Debug操作
- 1.设置断点
- 2.启动Debug
- 3.Debug页面
- 3.1测试按钮区
- 3.2服务按钮区
- 3.3方法调用栈区
- 3.4变量区
- 其他
- 参考资料
Debug介绍
是供程序员使用的程序调试工具,可以用它检查内存中任何地方的字节以及修改任何地方的字节。它可以用于逐指令执行某个程序以验证程序运行的正确性,也可以追踪执行过程、比较一个指令执行前后的值以及比较与移动内存中数据的范围,读写文件与磁盘扇区。
Debug操作
测试代码:
/**
* Debug测试
*/
public class DebugTest {
public static void main(String[] args) {
int i = 10;
i++;
int j = count(i);
System.out.println(j);
}
public static int count(int i) {
int j = 1 + (i + 1);
return j;
}
}
1.设置断点
在IDEA代码显示左侧,鼠标单击或快捷键"Ctrl+F8"打上/取消断点,即可设置相应位置断点。
2.启动Debug
设置完成相应断点后,有多种方法启动Debug,看个人习惯,博主用的最多的还是方法二,鼠标点击右上角的“小虫子”来启动,快捷键还没记熟吧= =
3.Debug页面
启动Debug后,会来到相应的IDEA Debug工作页面,按博主的理解,分为以下几个区域,接下来会逐个介绍:
1.测试按钮区
2.服务按钮区
3.方法调用栈区
4.变量区
3.1测试按钮区
一共有8个按钮,调试的主要功能就对应着这几个按钮,鼠标悬停在按钮上可以查看对应的快捷键。在菜单栏Run里可以找到同样的对应的功能。
*1.“单步执行”:“F6”每步执行数值都会有计算
*2.“进入方法”:“F5”如果未设置断点,按"F6"的话,无法直接进入方法,只会一步步执行直至结束要想进入方法,在执行到方法调用处时,应该按"F5",就能进入方法,执行完重新跳出方法*3.“表达式计算”:“Ctrl+U”鼠标选中想要计算的方法表达式,"Ctrl+U"就会出现计算弹窗,点击"Evaluate"就会计算显示表达式结果
4.“强制步入”:“Alt+Shift+F7”能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法
5.“步出”:“F7”(这里和"Shift+F8"区别,博主也还没弄清,有待勘正)从步入的方法内退出到方法调用处,此时方法已执行完毕,只是还没有完成赋值
6.“运行至光标”:“Ctrl+R”将光标定位到需要查看的行,然后使用这个功能,代码会运行至光标行,不需要打断点
7.“跳转至当前执行行”:“Alt+F10”如果光标在其它行或页面,点击可跳转到当前代码执行行
8.“回退断点”回退到上一个方法调用的开始处
3.2服务按钮区
可以在这里关闭/启动服务,设置断点等。
1.“重新执行”:“Ctrl+F11”*2.“断点跳跃”:“F8”在设置断点跳跃,只会跳在设置断点的地方
3.“停止”:“Ctrl+F2”4.“查看断点信息”:“Ctrl+Shift+F8”5.“使断点失效”:“Ctrl+Shift+F8”
3.3方法调用栈区
这里显示了该线程调试所经过的所有方法,勾选右上角的[Show All Frames]按钮,就不会显示其它类库的方法了,否则这里会有一大堆的方法。
3.4变量区
可以查看当前断点之前的当前方法内的变量。
其他
*1.“跳回方法调用处”:“Shift+F8”如果方法体很长,可以按"Shift+F8"直接跳回方法调用处未完待续…