CodeGym /课程 /Frontend SELF ZH /IntelliJ IDEA Debug

IntelliJ IDEA Debug

Frontend SELF ZH
第 38 级 , 课程 3
可用

10.1 启动调试器

我们会基于IntelliJ IDEA进行调试学习,相当合逻辑还很有趣。你马上就能看到。

在IntelliJ IDEA(需要Ultimate Edition版本)中,你可以用两种模式启动你的程序:

程序启动模式 面板图标 快捷键
普通执行 bug Shift+F10
调试模式启动 bug Shift+F9

普通模式你已经很熟了:程序启动,运行,结束。调试模式可就有不少惊喜给你了。

调试模式

调试模式让你可以一步一步地执行整个程序。更准确的说,逐行执行:一行一行来。 这样你可以在程序的每一步(每执行完一行代码后)观察变量的值。甚至可以修改它们的值!

要基本掌握程序调试的艺术,你需要了解三件事:

  • 断点
  • 逐步执行
  • 查看变量值

10.2 断点(Break Points)

IDE允许你在代码中放置特殊标记—断点(break point)。每次当以调试模式启动的程序运行到用break point 标记的行时,它会暂停。

要在特定行设置break point,只需在IntelliJ IDEA中点击该行左侧。示例:

break point

结果是这行会被标记为断点(break point),IntelliJ IDEA会将整行用红色高亮

break point

再次点击代码左侧的面板即可移除已设置的break point

同样的,break point可以通过快捷键Ctrl+F8放在当前行。 在已有break point的行上再次按下Ctrl+F8即可删除它。

10.3 以调试模式启动程序

如果你的程序中至少有一个断点,你可以以调试模式启动程序(Shift+F9或“虫子图标”)。

调试模式启动后,程序正常执行。但一旦它运行到用break point标记的代码行时,会暂停。示例:

break point

在截图的上半部分可以看到有两个断点的程序代码。程序停在 第2行 — 用蓝线标记。第2行还未执行:控制台还没有输出任何东西。

在屏幕的下半部分可以看到调试模式的面板:Thread & variables面板、控制台面板(屏幕输出),以及调试模式的按钮集。

你可以点击左下方面板中的Resume Program按钮(或按下F9)解除程序的暂停状态(继续执行)。

breakpoint

如果按下这个按钮(或F9),程序会继续运行,直到遇到下一个断点或结束。按下按钮后我们会看到:

breakpoint

程序停在第二个断点,控制台输出了Hello和and —— 表明屏幕输出的三行中只有两行执行了。

10.4 逐步执行

如果你的程序在调试模式下运行,你也可以逐步执行它:一步一步来,一行一行地执行。 逐步执行有两个快捷键:F7和F8 — 每个都能执行当前行的代码。 但是你首先需要通过断点暂停程序。

如果你想逐行执行程序,需要从最开始就设置断点 —— 在第一行代码上然后以调试模式启动它。

当程序暂停后,你可以开始逐行执行。按下F8 — 执行一行。

这是我们的程序在暂停并按下一次F8后的样子:

breakpoint

第一行 — print(“Hello”)已经执行了,当前行是第二行。你也可以在截图底部看到,Hello已输出到屏幕。

10.5 逐步执行进入函数

如果你的程序中有自定义函数,并且你希望在调试模式下不只是逐步执行,还要进入你的函数, 那么“进入函数”就得按F7,而不是F8。

假设你逐步执行程序并停在第5行。如果你按下F8,Intellij IDEA会直接执行第五行并跳到第六行:

debug

但如果你按F7,Intellij IDEA会逐步执行hello()函数:

debug

这很简单。如果你不太关心方法内部的执行,按F8。如果你在意,就按F7逐步执行整个代码。

评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION