idea的Debug断点调试
目录
如何打断点?
使用Debug
按钮项的作用
显示执行点
步过
步入
强制单步执行
步出
到光标处
评估表达式
恢复程序
举例说明
查看断点
静音断点
如何打断点?
在对应行的左侧点击鼠标左键,会出现一个小红点,有小红点说明在该行打上了断点。

注:再点一次即可取消断点。
使用Debug
打上断点后,我们如果要利用断点进行调试,需要用Debug方式

使用Debug后,程序会停在断点处:

按钮项的作用
显示执行点
返回执行点所在的界面

举例说明
比如当前程序的执行点在Test类的断点处
然后我打开另一个类
现在我想回到当前程序执行点所在的界面,也就是Test类。直接点击按钮:
点击按钮后,就直接回到了当前程序执行点所在的界面了:
步过
以当前断点为起点逐行执行代码

点击该按钮后,会执行该断点处的代码,并停在下一行。
举例说明
比如现在程序停在断点处
然后我点一下该按钮
程序会执行断点处所在的代码,并停在下一行:
控制台也打印了3:
说明执行了断点处的代码。
步入
它跟步过 的效果类似,也是逐行执行代码。区别在于,如果遇到方法,会进入到方法内部 。

举例说明
比如当前程序会执行test1方法
当点击步入按钮:
此时程序会进入到test1方法内部:
再点击一次步入按钮,就会执行test1()方法内的打印123的操作。
这里你可能会疑问,system.out.println难道不是方法吗?为什么没有进入到这个方法的内部?
原因是:
对于像
System.out.println这样的标准库方法,调试器通常不会进入其内部。这是因为这些方法属于 Java 标准库(java.*包),并且大多数调试器默认会跳过标准库的内部实现。这是为了简化调试过程,因为进入
System.out.println方法内部实际上会带你深入到 Java 库的实现细节,比如 IO 操作、同步机制等,这通常不是开发者在调试应用程序逻辑时所关心的。调试器会选择在用户编写的代码中步入,而跳过这些常见的库方法。
强制单步执行
它跟步入 的效果类似,也是逐行执行代码。区别在于,如果遇到方法,不仅可以进入到我们自定义的方法内部,还可以进入到java标准库里面的方法内部,即:可以进入到所有的方法内部。

举例说明
比如当前程序会执行test1方法
当点击强制单步执行按钮:
此时程序会进入到test1方法内部,并停在System.out.println(123)处:
再点击一次单步执行按钮,程序就会进入到System.out.println的方法内部:
步出
在 IntelliJ IDEA 的调试模式中,“步出”(Step Out)是一种调试操作,用来让程序执行完当前方法,并返回到调用该方法的位置。
具体来说,当你在一个方法内部进行调试时,如果你使用“步出”,调试器会继续执行直到该方法的结束,然后停在调用该方法的下一行代码上。这在你不需要逐行查看当前方法的内部逻辑时非常有用,可以节省时间。
举例说明
当前程序停在了test2()方法内部:
执行步出:
在 test2()内部调试时使用“步出”,调试器会继续执行 test2(),然后返回到 test1(),并在
System.out.println("456");停下来。
到光标处
在 IntelliJ IDEA 中,“到光标处”(Run to Cursor)是一种调试功能。当你在代码中设置断点并开始调试时,可以使用“到光标处”命令让程序直接到你当前光标所在的行并暂停,而不需要在这行代码处显式地设置断点。

举例说明
比如当前程序执行到断点处,当前光标在下面的某处:
然后点击到光标处:
这样程序会执行到光标处:
评估表达式
在 IntelliJ IDEA 的调试中,"评估表达式"(Evaluate Expression)是一种功能,允许你在程序暂停执行时动态地评估和执行任意的代码表达式或变量,并查看它们的值或效果。这对于调试过程中检查变量状态、验证条件、或者执行特定的函数调用非常有用。

举例说明
比如在程序开头定义两个变量。
点击评估表达式按钮:
可以写个表达式:
评估结果:
恢复程序
在 IntelliJ IDEA 的调试中,“恢复程序”(Resume Program)是指在调试暂停时,让程序继续执行,直到遇到下一个断点或程序正常结束。

举例说明
比如现在程序有两个断点:
现在调试,程序停在第一个断点处:
然后我点击恢复程序按钮:
程序就会执行到下一个断点处:
查看断点
在 IntelliJ IDEA 的调试中,“查看断点”指的是检查、管理和配置所有当前项目中设置的断点。断点用于在调试时暂停程序的执行,以便你可以检查程序的状态、变量值、堆栈信息等。查看断点功能让你可以轻松管理和调整这些断点。


查看和管理断点 :
* 你可以看到所有断点的列表,包括行断点、方法断点、异常断点、条件断点等。
* 通过这个视图,你可以启用或禁用特定的断点,编辑条件断点的条件,删除不需要的断点,甚至可以为断点设置触发条件或执行脚本。
设置条件和操作 :
* 你可以双击某个断点来编辑它,设置条件表达式(例如,当某个变量满足特定条件时才暂停),或者指定在断点命中时执行某些操作(如日志记录、计算表达式等)。
查看断点的功能有助于你更好地管理调试过程,特别是在代码中设置了很多断点时,可以帮助你快速定位和调整想要调试的位置。
静音断点
在 IntelliJ IDEA 的调试中,“静音断点”(Mute Breakpoints)是一种功能,允许你临时禁用所有断点,而不需要逐个禁用它们。开启静音断点后,调试器会忽略代码中的所有断点,程序将直接连续而不会因为断点而暂停。这对于需要快速程序来查看整体行为,或者临时不希望调试器停止的场景非常有用。
一般搭配恢复程序按钮使用
举例说明
比如现在程序有很多断点:
现在我想程序直接,经过断点也不要停下来。此时可以点击静音断点:
点击后,会发现所有断点的颜色都变成了灰色,说明此时的断点不再起作用,不会再让程序停下来。
我们再点击恢复程序:
程序就不再受断点影响,一路往下:
需要注意的是,点击静音断点后,再进行调试,默认也会静音断点。所以如果不想再静音断点,需要再点击一次恢复


































