本文正在参加「Java主题月 - Java Debug笔记活动」,详情查看 活动链接
调试器使应用程序调试更加容易。 使用调试器,我们可以在某个点停止程序的执行,检查变量,进入功能并做很多事情。 IntelliJ提供内置的Java调试器。
断点
断点允许在特定点停止程序执行。 可以通过将鼠标悬停在编辑器的装订线区域上并单击来设置断点。
断点用红色圆圈符号表示。 考虑在第3行设置的断点。
考虑以下步骤,以了解有关断点如何工作的更多信息-
-
右键单击红色圆圈符号。
-
选择 更多 选项。
-
要删除断点,只需单击相同的符号。
请按照以下步骤启动调试器-
- 导航到“运行”菜单。
- 选择调试选项。
踏入
调试时,如果遇到某个功能并选择了采取措施,则调试器将在该功能的每个点停止程序执行,就像为该功能启用了调试一样。
例如,当程序执行到达第9行时,如果我们选择要执行的步骤,则它将在 每一行停止执行 sayGoodBye() 函数的 。
踏出
逐步执行操作与逐步执行相反。 例如,如果您在上述情况下执行“跳出”操作,则调试器将从 返回, sayGoodBye() 方法 并从第10行开始执行。
跳过
相反,“跳过”操作不会进入功能,它将跳至下一行代码。 例如,如果您在第9行并执行跨步操作,则它将执行移至第10行。
恢复程序
“继续程序”操作将通过忽略所有断点来继续执行程序。
停止行动
停止操作有助于停止调试器。
明智地进入
在调试时,有时我们可能会到达一行调用多个方法的代码。 在调试这些代码行时,调试器通常允许我们使用 step into 并引导我们完成所有子功能,然后再返回到父功能。 但是,如果我们只想进入一个子功能,该怎么办? 有了Smart step-into,它使我们能够选择要进入的功能。
现在,让我们用以下代码行创建一个Java类-
public class HelloWorld { public static void main(String[] args) { allFunctions(); } static void allFunctions() { System.out.println(function1() + " " + function2() + " " + function3()); } static String function1() { return "function1"; } static String function2() { return "function2"; } static String function3() { return "function3"; } }
在上面的代码中, allFunctions() 调用了另外3个函数。 让我们在此功能处设置断点。 请按照以下步骤执行智能步骤-
- 去跑步
- 选择智能步入。
- 选择要使用的子功能。
检查变量
在调试过程中,IntelliJ在“编辑器”窗口本身中显示变量的值。 我们还可以在“调试”窗口中查看相同的信息。
评估表达
评估表达允许即时评估表达。 请按照以下步骤执行此操作-
-
在调试器中启动应用程序
-
导航到“ 运行”->“评估 表达式”。
-
输入表达式。 在下面给出的示例中,变量“ i”的当前值为0; 因此,表达式“ i> 100”的计算结果为false
本篇文章到这里就结束啦,各位看官老爷们点个赞加个关注可好?
往期热文:
- Java基础知识总结
- 性能调优系列专题(JVM、MySQL、Nginx and Tomcat)
- 从被踢出局到5个30K+的offer,一路坎坷走来,沉下心,何尝不是前程万里
- 100个Java项目解析,带源代码和学习文档!
end