IDEA Debug调试断点高级玩法
- 一、设置条件断点
- 二、表达式解析
- 三、避免操作资源
- 四、断点调试的一些快捷键、图标
- 五、流式编程的断点调试
一、设置条件断点
打完断点,再次右键点击断点,可以设置
(断点只会在符合条件的情况下停顿,不会影响程序)
①只在循环为偶数的时候断点
②设置只在线程1的时候断点
Thread.currentThread().getName().equals(“thread1”)
③点击more可以更详细配置
勾选“Breakpoint hit”message 在断点触发了会打印断点信息
Stack trace 会同时打印队栈信息
**
二、表达式解析
**
调试程序,点击这个小计算器一样的图标,或者Alt+F8
就可以开始做表达式解析了,输入上文已创建的对象或者其他玩意解析
比如说这个地方有多个if else 的判断,可以用此来判断ture和false,或者看某个方法的返回值
三、避免操作资源
在某个出bug的问题代码块中,可能没有try,处理异常,可能就把错误数据存进了redis等数据库中,这时处理起来非常麻烦
比如在此时,调试过程中,发现了异常,想点stop结束程序,但是方法进入之后必须要出栈,方法内部的一些指令还是会走完,程序依然会运行完成,操作还是会继续可能你会点击 Drop Frame,丢弃当前帧
但是,这只会回到调用方法前,之后继续走的话还是要执行此方法,陷入死循环具体操作:
比如现在光标点位到了,不想执行的这一行
打开Frame面板,点击右键,Force Return,强制返回,会跳过该方法
四、断点调试的一些快捷键、图标
① 光标回到断点停顿的地方
② step over(F8 )
这行执行完毕就跳到下一行
③step into ⑤step out
③跳进方法体内 执行方法体内代码,⑤跳出方法体
⑦ run to cursor
从当前代码跳到光标处代码(中间代码依旧执行)
五、流式编程的断点调试
可以选择一行,还是里面的一个表达式
可以进行更精细的流式处理