1. 如何定制化调试的工具栏

在其中的一个调试按钮上右键就可以调出自定义调试工具的设定页面

2. 断点的四大类型
-
单行断点(Java Line Breakpoints)


-
方法断点(Java Method Breakpoints)


在接口内定义的方法上面打断点 -
变量断点(Java File Breakpoints)


打在这里的断点,只要这个变量有变动就会触发他就会告诉你哪个方法里边在改动这个变量 -
异常断点(Java Exception Breakpoints)

出现了异常会自动生效,并打印日志
添加一个需要关注的异常:


3. 断点工具
3.1 基本常用功能
| 图标 | 英文名称 | 快捷键 | 功能说明 |
|---|---|---|---|
![]() |
show Execution Point | 光标回到当前断点行 | |
![]() |
Step over |
F8 | 步过,光标一行一行的执行 |
![]() |
Step into | F7 | 步入,进入方法的内部,但是JDK自带的默认方法不会进入 |
![]() |
Force Step Into | 强制步入方法的内部,无论是自己写的方法还是JDK默认自带的方法都能进入 | |
![]() |
Step Out | 步出,跳出本次方法的运行 | |
![]() |
Run to Cursor | 跳转到光标所在的位置 | |
![]() |
Force Reutrn | 强制返回。表示后边的逻辑不在执行,可以很好的避免废数据的产生。在复杂的应用中最好是使用 return 不要使用stop | |
![]() |
Rest Frame | 返回到上一个栈。可以重复的进入到当前退出的栈方法。也就是有了一个后悔药的机会。可以想象成子弹的弹匣装字段的功能 |
3.2 Stream流式debug
案例
public class TestDemo {
public static void main(String[] args) {
myStreamChain();
}
private static void myStreamChain() {
List<Integer> collect = Stream.of(1, 2, 3, 4, 5, 6, 7, 8, 9).filter(f -> f > 3).map(m -> m * 2).collect(Collectors.toList());
}
}
调试按钮

英文名称是:Trace Current Stream Chain
用来调试stream流的工具。断点停到对应的位置后,点一下就可以显示出调试面板









评论区