IDEA的Debug详解
01_Debug简介和意义
- 什么是程序DeBug? - Debug,是程序开发人员必会的一项调试程序的技能。 
- 企业中程序开发和程序调试的比例为1:1.5,可以说如果你不会调试程序,你就没有办法从事编程工作。 
 
- Debug能帮助我们做什么? - 追踪代码的运行流程。 
- 程序运行异常定位。 
- 线上问题追踪。 
 
- Debug对于程序学习者的意义 - 通过调试能够更好的查看程序的执行流程。 
- 复杂的程序逻辑,通过老师的口述讲解,很难理解清楚,这个时候借助调试能够很好的帮助同学们理解程序。 
- 定位问题,提高自我解决问题的能力。 
 
02_IDEA中的Debug步骤
- 设置断点(F9) 
- 调试程序(8个按钮) 

- 观察变量 - 查看变量有三种方式: - 程序区查看变量 
- Debugger的Variables中查看变量 
- 鼠标悬停到变量名上会弹出当前变量的值 
 
  
- 查看输出 
03_跳转到当前代码执行的行
- 跳转到当前代码执行的行(Alt + F10) 
- 作用 - 使程序窗口切换到当前正在运行的程序处。 
 
04_步过调试的使用
- 步过调试 - 步过调试按钮(F8)  
 
- 作用 - 步过,一行一行地往下走,如果这一行上有方法不会进入方法。 
- 常用于调试过程中不想进入调用的方法体的情况。 
 
05_步入调试的使用
- 步入调试 - 步过调试按钮(F7)  
 
- 作用 - 步入,一行一行地往下走,如果这一行上有方法,则进入方法内部。 
- 一般用于进入自定义方法内,不会进入官方类库的方法。 
 
06_强制步入调试的使用
- 强制步入调试 - 强制步入调试按钮(Alt + Shift + F7)  
 
- 作用 - 进入官方类库方法 
- 帮助我们学习和查看JDK源码 
 
07_步出调试的使用
- 步出调试 - 步出调试按钮(Shift + F8)  
 
- 作用 - 从方法内退出到方法调用处。 
- 调试的时候,有时候会跳入到自己不想查看的方法体,这个时候使用步出。 
 
08_回退断点调试的使用
- 回退断点 - 回退断点按钮  
 
- 作用 - 回退到当前方法的调用处。 
- 当想重新查看该方法体的执行过程时,不用重新启动Debug,可以使用回退断点方式。 
 
09_运行到光标处
- 运行到光标处 - 运行光标处按钮 (F9)  
- 作用 - 使程序运行到光标处,而无需设置断点。 
 
 
10_计算表达式
- 计算表达式 - 计算表达式按钮(Alt + F8)   
 
- 作用 - 设置变量,在计算表达式的框里,可以改变变量的值,这样有时候就能很方便我们去调试各种值的情况了。 
 
11_条件断点
- 条件断点 - 右键单击断点处,可以设置进入断点的条件  
 
- 作用 - 通过设置断点条件,在满足条件时,才停在断点处,否则直接运行。 
 
12_多线程调试
- 步骤 - 多线程调试,需要调整断点挂起级别为Thread  
- Frame中选择线程进行调试 
 
IDEA的Debug详解的更多相关文章
- Android签名详解(debug和release)
		Android签名详解(debug和release) 1. 为什么要签名 1) 发送者的身份认证 由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,以此保证签名不同的包 ... 
- 汇编debug工具详解
		关于debug工具里的各个指令的用法 debug调试工具详解: r:可以查看,和改变寄存器中的内容具体用法:·直接输入r的时候,回车显示当前指向内存单元中所有寄存器中的内容,并将所指机器码翻译成汇编指 ... 
- Android调试桥-Android Debug Birdge详解
		原文:http://android.eoe.cn/topic/summary Android调试桥-Android Debug Birdge Android调试桥(adb)是一个多功能的命令行功具,它 ... 
- 转: Android 软件开发之如何使用Eclipse Debug调试程序详解(七)
		转自: http://www.uml.org.cn/mobiledev/201110092.asp Android 软件开发之如何使用Eclipse Debug调试程序详解(七) 发布于2011- ... 
- 【转】 C# DEBUG 调试信息打印及输出详解
		[转] C# DEBUG 调试信息打印及输出详解 1.debug只在[debug模式下才执行](运行按钮后面的下拉框可选) 2.debug提供了许多调试指令,如断言 System.D ... 
- (转)Intellij IDEA 2017 debug断点调试技巧与总结详解篇
		背景:详细介绍idea的debug调试过程 Intellij IDEA 2017 debug断点调试技巧与总结详解篇 
- Intellij IDEA中使用Debug调试详解
		转载:https://www.linuxidc.com/Linux/2017-09/146772.htm Intellij IDEA中使用Debug调试详解 Debug用来追踪代码的运行流程,通常 ... 
- IntelliJ IDEA 2020.1.1 x64 Debug 断点调试模式详解
		前言 对于初入职场的萌新们来说,很多都还不会 Debug 断点模式.记得我刚写代码的时候,也是通过 System.out.println() 一行一行的把变量打印出来看.其实强大的编辑器已经帮我们做好 ... 
- IDEA中 Debug 调试工具(图文详解)
		DEBUG调试工具 一. Debug 调试工具 1. Debug的作用 2. Debug的使用步骤 3. IDEA中Debug按钮详解 总结 参考博文:https://blog.csdn.net/qq ... 
随机推荐
- PHP is_string() 函数
			is_string() 函数用于检测变量是否是字符串. PHP 版本要求: PHP 4, PHP 5, PHP 7高佣联盟 www.cgewang.com 语法 bool is_string ( mi ... 
- PHP is_iterable() 函数
			is_iterable() 函数用于检测变量的是否是一个可迭代的值. PHP 版本要求: PHP 7 >= 7.1.0高佣联盟 www.cgewang.com 语法 bool is_iterab ... 
- PHP fmod() 函数
			实例 返回 x/y 的浮点数余数: <?php$x = 7;$y = 2;$result = fmod($x,$y);echo $result;// $result equals 1, beca ... 
- PDO::errorCode
			PDO::errorCode — 获取跟数据库句柄上一次操作相关的 SQLSTATE(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0) 说明 语法 mixed PDO: ... 
- 7.28 NOI模拟赛 H2O 笛卡尔树 并查集 贪心 长链剖分
			LINK:H2O 这场比赛打的稀烂 爆蛋. 只会暴力.感觉暴力细节比较多不想写. 其实这道题的难点就在于 采取什么样的策略放海绵猫. 知道了这一点才能确定每次放完海绵猫后的答案. 暴力枚举是不行的.而 ... 
- CF R638 div2 F Phoenix and Memory 贪心 线段树 构造 Hall定理
			LINK:Phoenix and Memory 这场比赛标题好评 都是以凤凰这个单词开头的 有凤来仪吧. 其实和Hall定理关系不大. 不过这个定理有的时候会由于 先简述一下. 对于一张二分图 左边集 ... 
- Latex—参考文献
			在写文章的最后最让我头疼的就是参考文献的问题了.网上的资料也有很多,这里整合了很多资料得出了一个用bib文件的方法. 1. 显示确定参考文献(一句没什么用的废话). 2. 利用谷歌学术(镜像),如 ... 
- 41-native关键字的理解
			使用 native 关键字说明这个方法是原生函数,也就是这个方法是用 C/C++等非Java 语言实现的,并且被编译成了 DLL,由 java 去调用. (1)为什么要用 native 方法 java ... 
- 当面试官问我ArrayList和LinkedList哪个更占空间时,我这么答让他眼前一亮
			前言 今天介绍一下Java的两个集合类,ArrayList和LinkedList,这两个集合的知识点几乎可以说面试必问的. 对于这两个集合类,相信大家都不陌生,ArrayList可以说是日常开发中用的 ... 
- hashCode竟然不是根据对象内存地址生成的?还对内存泄漏与偏向锁有影响?
			起因 起因是群里的一位童鞋突然问了这么问题: 如果重写 equals 不重写 hashcode 会有什么影响? 这个问题从上午10:45 开始陆续讨论,到下午15:39 接近尾声 (忽略这形同虚设的马 ... 
