Debug操作技巧
Show Execution Point
将光标回到当前断点停顿的地方
Step Over
执行当前行代码,并将运行进度跳转到下一行。
Step Into
进入到当前代码行的方法内部。
Step Out
从方法内部出去
Force Step Into
强制进入Java自带方法的内部
Run to Cursor
将光标定位到想到达的代码行
点击Run to Cursor
Drop Frame
丢弃当前虚拟机栈帧
初始:
进入方法:
本文转载自:https://www.gylmap.com
丢弃当前帧:
也就是说,我们退回了上一步进入方法之前。
Evaluate Expression
可以用它来评估表达式
如 p.getName()等。
Force Return | 避免操作资源
我们在调试代码的时候中间出现了异常,但是我们又没有做异常捕获,稀里糊涂地把错误数据存到了数据库中,我们又需要将这些数据给删除,将数据库复原,才能达到之前我们需要的效果。
所以,接下来我们讲一讲如何避免操作资源,强制返回。
↓CloseCode↓
public static void saveResource() {
System.out.println("shit happens");
System.out.println("save to db");
System.out.println("save to redis");
System.out.println("send message to mq for money payout");
}
debug:
我们发现程序出现了异常
Force Return
它会只打印shit happens,不会继续向下执行了。
Trace Current Stream Chain | Stream Debug
public static void streamDebug() {
// stream chain
Arrays.asList(1, 2, 3, 45).stream()
.filter(i -