前言
对于初入职场的萌新们来说,很多都还不会 Debug 断点模式。记得我刚写代码的时候,也是通过 System.out.println() 一行一行的把变量打印出来看。其实强大的编辑器已经帮我们做好了这个功能。今天就带大家了解一下这个功能。Debug 能让我们调试代码的时候如鱼得水步步高升。我是用的 idea 版本是 2020.1,每个版本可能略有差异,但是这并不影响我们的骚操作。
1.调试步骤
1.1 打断点
1.2 Debug模式运行
2.调试结果界面详解
2.1 Rerun
这个就是结束debug模式,直接以run的方式重新跑某个程序。
2.2 Resume
直接跑完, 到下一个断点停下, 没有就直接跑完程序。
2.3 Stop
停止项目或者程序。
2.4 View Breakpoints
查看所有的断点设置情况
项目中有时候打的断点多了,容易找不到断点的位置,这个按钮能够知道项目中所有的断点位置。效果如下:
2.6 Mute Breakpoints
直接取消所有断点. 让所有断点无效。
这个按钮可以使所有的断点失效,达到快速调试的目的。再次点击断点恢复生效。断点失效如下:
2.7 Show Execution Point
跳转到当前代码所执行的地方。 也就是说你在看代码的时候.,点到其他地方,点击这个按钮,光标就回到了程序执行到当前代码的地方。
2.8 Step over
下一步 如果是方法. 他是不会跳进去的。就是在当前代码一行行的往下走。直到程序结束
2.9 Step into
跳转到详情。如果下一行调试代码是可执行方法, 就可以点这个按钮进到方法内部去,查看这个方法的运行详细情况。只能进入你自己写的方法
当我们在 23 行时需要进到方法内部去看 numberAdd 执行过程的时候,这个按钮就能跳转到方法内部,执行完毕,dubug 断点会再次回到 23 行处。效果如下:
2.10 Force Step Into
暴力进入方法内部,一句话:Step Into 能做的,它能做,Step Into 不能做的,它也能做。非常适合用来调试第三方源代码。
2.11 Step out
从详情跳出去. 和上面的9相反。
点击 Step In 会进到方法内部,点击 Step Out 会回到最初的执行位置。效果如下:
2.12 Run to cursor
跳转到那个光标所在的地方,前提是他能路上没断点拦着(这个也很好用的,可以直接跳到下一个断点处)。
Run to Cursor 强大之处在于直接跳转,不用一行一行往下执行 Dubug 。效果如下:
2.13 Evaluate Exepression
这个点开之后. 可以计算你想要看的代码段的值。它能获取你想要的一切.
这个功能,相当于在 Dubug 的时候,在给 Debug 做一遍 Debug 。在字符串拼接的时候特别好用。计算效果效果如下:
不仅如此,还能展开面板,进行代码编写,相当强大。效果如下:
2.14 Drop Frame
有时候当我们步入方法体之后. 还想回退到方法体外. 点这个按钮后. 断点重新回到方法体之外。在继续还是可以再次进到方法内(这个很好的. 假设你手快. 跳过想断点的方法. 然后这个drop frame. 出去之后. 就可以再次debug啦。这个很是着重介绍一下, 就算你只打一个断点, 一不小心跑了,不怕,点这个退出,然后再执行,还是会再次进入断点的。这个很管用的, 要是不知道的话 ,就的再从头到尾的执行一遍, 很是麻烦。世界上没有后悔药,但是 Drop Frame 却可以重开。)