Idea调试技巧

简介: Idea调试技巧

1 问题描述

在编写程序的时候免不了面对的问题就是出现错误,而错误分为两部分:看得见的错误和看不见的错误。看的见的错误:在IntellijIDEA编辑器上对于一些语法错误或者关键词单词错误进行标红;看不见的错误:并不会被IntellijIDEA识别,但不会被运行成功。

2 问题分析

看得见的错误很好被解决,本文将围绕如何解决看不见的错误进行展开。看不见的错误虽然很不被标红,但运行后会被报exception,这时候会用到调试的方法。调试能够解决许多问题,不仅仅是exception的问题,还可以检测运行过程中参数的值

3 解决方案

下面所示代码是本次围绕的所有代码

 1

第一步  设置断点

在想要设置断点的代码行,在行号栏的后面单击鼠标左键或者使用快捷键(因电脑而异)。

2

第二步  开启调试会话

点击idea左上角的小虫子,进入调试,(注意左侧的下拉框选中应该为调试运行的程序,本人的程序名为DemoOne)。

3

在运行后(debug模式),程序会停留在打断点的位置且没有被运行本行。同时idea下方会出现此样的Debugd试图。图中红色箭头所指之处就是目前所运行之处,右侧视图里面是检测目前的变量的值。

4

第三步  单步调试

单步调试主要应用了中的方框中的左边四个按钮:step overstep intoforce step overstep out

Step over


单步执行,运行下一条代码;运行过程中遇到子函数时是不会进入子函数内的,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。因此图 1中的代码,并不会进入maxTwo(x,y)Math.max(x,y)两个函数,而是直接被输出了结果,然后结束程序。

Step into


运行下一条代码;运行过程中遇到子函数时能够进入子函数内的,且继续单步执行。

注意:进入的子函数,只包括自己设计编写的函数,例如图 1中第17行的maxTwox,y能够被进入,但是第18行的Math.max(x,y)不能够进入函数主体。

也就是包括了stepover的功能但是多了一个能够进入子函数的功能。

force step into


运行下一条代码;运行过程中遇到任意函数都能够进入,也就解决了step into上的不足。

step out


普通语句时,结束程序;for循环时,依旧执行循环体,但循环完成后结束程序;若正在子函数内部,那么就执行完子函数余下部分,并返回到上一层函数。一般此方法用于,自己认为此函数并没有问题,就使用其进行退出,直接下一条语句。

Drop frame


当已经运行于某个函数内,该按钮会亮起,点击后可返回到当前方法的调用处,重新执行。为便于理解,笔者在maxTwo(x,y)里面多写了两条代码,点击中间的正方形框时就会被跳入到最下方的方框中的main()函数中。

4 总结

本文建议介绍了如何使用idea去调试,主要对step over / step into / forcestep into/step out这四个按钮进行阐述,希望对正在阅读的您一点帮助。

参考文献

WB4S ——《Intellij IDEA调试功能使用总结》——博客园

目录
相关文章
|
Java 开发工具
【开发工具】IDEA-DeBug 调试模式使用
【1月更文挑战第20天】【开发工具】IDEA-DeBug 调试模式使用
|
6月前
|
监控 测试技术 开发者
IDEA项目调试你都会用了么,快看看是否有你不知道的调试技巧
在IntelliJ IDEA中,熟练运用调试工具可显著提升开发效率。通过设置断点、单步执行、变量监控等功能,快速定位问题并优化代码性能。此外,掌握多线程调试、异常处理及远程调试技巧也至关重要。为提高效率,建议合理使用条件断点、快捷键与日志监控,同时不断学习总结经验。若觉得有用,别忘了点赞收藏!
IDEA项目调试你都会用了么,快看看是否有你不知道的调试技巧
|
SQL 存储 数据处理
实时计算 Flink版产品使用合集之idea本地调试,在哪里查看执行结果
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
数据库 开发者
IntelliJ IDEA调试技巧:提升你的调试效率
调试是软件开发中不可或缺的一部分,而IntelliJ IDEA提供了一套强大的调试工具,可以帮助开发者更高效地定位和解决问题。本文将分享一些高手必会的IDEA调试技巧,让你在调试时如虎添翼。
316 0
|
IDE Java 开发工具
IntelliJ IDEA高效调试技巧:提升你的调试效率
在Java开发中,调试是开发过程中不可或缺的一部分。IntelliJ IDEA作为一款强大的IDE,提供了丰富的调试功能,帮助开发者更高效地定位和解决问题。本文将分享一些高手必会的IDEA调试技巧,让你的调试工作事半功倍。
255 0
|
应用服务中间件
idea 调试报错 Illegal access: this web application instance has been stopped already.
idea 调试报错 Illegal access: this web application instance has been stopped already.
442 0
IDEA之Stream表达式生成、调试
IDEA之Stream表达式生成、调试
496 1
|
Web App开发 JavaScript 前端开发
IDEA——使用JavaScript Debugger调试代码
IDEA——使用JavaScript Debugger调试代码
122 0
|
SQL 分布式计算 大数据
MaxCompute产品使用合集之如何在本地IDE(如IntelliJ IDEA)中配置MaxCompute (mc) 的任务和调试SQL
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
NoSQL 关系型数据库 MySQL
开发者福音:用IDEA和Iedis2加速Redis开发与调试
开发者福音:用IDEA和Iedis2加速Redis开发与调试
245 0
开发者福音:用IDEA和Iedis2加速Redis开发与调试