新闻详情

新闻详情

首页 / 资讯中心 / 详情

IDEA 调试入门:新手也能看懂的断点调试教程

发布时间:2026/9/27 4:57:44来源:尧图网络
IDEA 调试入门:新手也能看懂的断点调试教程
IDEA 调试 Debug 新手教程 Java写代码的时候光靠 System.out.println 打印来找问题效率太低了。今天整理一下 IDEA 最基础的调试方法看完就能上手。一、什么是断点调试断点就是在某一行代码上做个标记。程序运行到这一行的时候会自动停下来这时候你可以一步步看代码怎么执行的每个变量的值是多少。二、怎么打断点在代码行号左边的空白处点一下鼠标左键出现一个红色的小圆点就是断点打好了。注意只能打在可执行代码的行上空行、大括号、注释行是打不上的。快捷键光标放在要打断点的那一行按 CtrlF8可以快速添加或者取消断点。三、怎么启动调试不要点那个绿色的三角形运行按钮要点旁边那个绿色的小虫子图标叫 Debug。或者右键代码编辑区选 Debug Main。启动之后程序会正常运行直到碰到你打的断点自动停下来。停下来的时候当前这一行会高亮显示。四、最常用的几个快捷键这几个键一定要记住调试全靠它们F8Step Over步过最常用。按一下执行当前这一行代码然后停在下一行。如果当前这一行调用了别的方法不会进方法里面直接把整个方法执行完。适合你不想进方法内部只想一行一行往下看的时候用。F7Step Into步入如果当前这一行调用了一个方法按 F7 会跳进这个方法里面看方法内部是怎么执行的。调试递归的时候特别有用。ShiftF8Step Out跳出如果你不小心跳进了一个不想看的方法按 ShiftF8会把这个方法剩下的代码全部执行完然后回到调用这个方法的那一行的下一行。F9Resume继续从当前停下来的地方继续运行直到碰到下一个断点。如果后面没有断点了程序就直接跑完。CtrlF2停止停止调试。五、Debug 窗口两个重要面板程序停在断点的时候下面会弹出 Debug 窗口重点看两个地方Variables变量面板这里会显示当前这一行代码之前所有变量的值。你可以直接看到每个变量现在等于多少不用再写 println 打印了。调试的时候看变量值对不对就看这里。Frames调用栈面板这里显示的是方法调用的层级。普通代码没感觉但是调试递归的时候这个面板是最有用的。每调用一次方法这里就多一层。你可以清楚地看到现在执行到了哪一层方法每一层的参数是多少。六、实际例子调试递归拿之前写的阶乘递归举例public static int fac(int n) { if (n 0) { return 1; } int tmp n * fac(n - 1); return tmp; } public static void main(String[] args) { int result fac(5); System.out.println(result); }我们在int tmp n * fac(n - 1);这一行打个断点启动 Debug。程序停在这一行看 Variables 面板n5。按 F7跳进 fac (n-1)也就是 fac (4)。现在 Frames 面板里多了一层 fac (4)。继续按 F7一层一层跳进去fac (4)、fac (3)、fac (2)、fac (1)、fac (0)。到 fac (0) 的时候满足 n0return 1。这时候按 ShiftF8会看到一层一层往外跳。跳出来的时候看 Variables 面板tmp 的值是怎么一层层算出来的。这一遍走下来递归是怎么一层一层进去又怎么一层一层回来的就全看明白了。比自己在脑子里想十遍都管用。七、几个小技巧断点打多了不想一个一个取消点 Debug 窗口里的 Mute Breakpoints 按钮两个小红点那个可以一次性让所有断点失效再点一下恢复。想让程序直接跑到光标那一行停下来把光标放在某一行按 AltF9选 Run to Cursor程序就直接运行到那一行再停不用一步一步按 F8。红色圆点如果是空心的说明这个断点打不上这一行没有可执行代码。八、新手建议刚开始学调试不要怕按错。F7、F8、ShiftF8 这几个键反复按几遍看看代码怎么跑的变量怎么变的很快就熟了。特别是学递归的时候一定要用断点调试一遍。递归最绕的地方就是你看不到它内部是怎么调用的断点一打开调用栈一层层列出来瞬间就懂了。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

汽车电子技术全景拆解:从ECU架构演进到UDS诊断与Simulink开发 2026/9/27 5:54:04

汽车电子技术全景拆解:从ECU架构演进到UDS诊断与Simulink开发

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
子洲网站建设制作避坑指南:3年运维老手教你防黑加固 2026/9/27 5:53:45

子洲网站建设制作避坑指南:3年运维老手教你防黑加固

子洲网站建设制作避坑指南:3年运维老手教你防黑加固 你的网站突然打不开,浏览器弹出红色警告“不安全”,或者后台莫名多了一个推广赌博的页面?别慌,这不是天塌了,而是你掉进了“裸奔”的陷阱。我见过太多老板,花几万块做了个漂亮的官网,结果上线不到…

阅读更多 →
建设网站需要提前准备的条件一文搞懂 2026/9/27 5:53:25

建设网站需要提前准备的条件一文搞懂

建设网站需要提前准备的条件一文搞懂 模板网站太丑,功能还卡壳,这是很多老板找我们建站时的第一句话。别急着骂供应商,很多时候不是他们不行,是你手里没牌。今天不聊虚的,直接拆解 建设网站需要提前准备的条件…

阅读更多 →
不懂代码怕被黑?一文搞懂谷歌官方建站服务安全坑 2026/9/27 5:53:25

不懂代码怕被黑?一文搞懂谷歌官方建站服务安全坑

不懂代码怕被黑?一文搞懂谷歌官方建站服务安全坑 想做网站却不会写代码,是不是经常心里发虚?尤其是看到新闻里说某某官网被挂马、数据泄露,那种“会不会轮到我家网站”的焦虑感,简直让人睡不着觉。很多设计师或老板以为,只要用了 谷歌官方建站服务…

阅读更多 →
开发了一个GNSS软件接收机,大家觉得怎么样? 2026/9/27 5:53:06

开发了一个GNSS软件接收机,大家觉得怎么样?

一个 GNSS 软件接收机:Qt6 C20,把 GPS / 北斗 / Galileo 十种信号全部打通一个不依赖任何第三方 GNSS 库的离线软件接收机。21,000 行 C20 从捕获、跟踪、导航电文译码一路写到多系统联合定位,配上完整的 Qt6 图形界面和命令行批处理工具。十…

阅读更多 →
RTX 3080 20G 的 CUDA 兼容性 / 新驱动还能不能正常跑本地模型? 2026/9/27 5:52:40

RTX 3080 20G 的 CUDA 兼容性 / 新驱动还能不能正常跑本地模型?

RTX 3080 20G 属于改显存版本,判断它能不能跑本地模型,关键不在显存大小,而在两件事:驱动是否认得出这张卡,以及驱动暴露的 CUDA 支持上限是否不低于框架编译时用的版本。多数情况下,只要 nvidia-smi 能稳定…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉