idea之debug模式

idea是一个非常好用的工具。他的debug更是功能强大,今天来看下idea的强大debug功能。

我们写几个简单的方法。

直接debug模式启动idea之debug模式
F8 单步调试,不进入函数内部

F7 单步调试,进入函数内部

F9 继续执行,进入下一个断点或执行完程序

其余不常用;

以下只介绍部分实用的功能。

ALT + F8 

此功能可以直接执行,在弹出的窗口中,可以随意编写执行的java代码语句,同时,可以使用当前作用域中的所有变量。

该方法和 Variables 类似

idea之debug模式

idea之debug模式

添加 Variables

该功能和alt+f8类似,可以编写表达式执行。并且不会失效(下次budeg还会执行该方法),这里需要注意是和ALT+F8不同的地方,如果没有删除,会一直执行,避免坑了自己。

idea之debug模式

Frames

frames是程序执行的模块,通过该功能,可以实现debug倒退功能,注意持久化什么的可不能倒退的哈/狗头

idea之debug模式

 

在页面右键 idea之debug模式

或者直接点击按钮 

idea之debug模式

可以发现程序从25行倒退到了21行

idea之debug模式

再次按F8,可以继续往下执行。

条件断点

我们可以为添加的断点写条件执行,当表达式为true的时候才开启断点,我们可以右键单击断点

idea之debug模式

断点变成有问号的样式了

idea之debug模式

同时可以设置命中一次后失效、命中后失效某个断点 等高级功能

idea之debug模式

Memory

查看java堆的状态

class:类名,

Count:类在堆中的实例数量

Diff:两个断店之间的实例数量差距

idea之debug模式

 

 

更多骚操作请查看官方文档:

https://www.jetbrains.com/help/idea/debugging-code.html