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 ...
随机推荐
- Python file() 函数
描述 file() 函数用于创建一个 file 对象,它有一个别名叫 open(),更形象一些,它们是内置函数.参数是以字符串的形式传递的.每组词 www.cgewang.com 更多文件操作可参考: ...
- PHP 数据库 ODBC创建 ODBC 连接
PHP 数据库 ODBC ODBC 是一种应用程序编程接口(Application Programming Interface,API),使我们有能力连接到某个数据源(比如一个 MS Access 数 ...
- Skill 中的通用输出格式规范
https://www.cnblogs.com/yeungchie/ Skill中的通用输出格式规范 Common Output Format Specifications Format Specif ...
- 强大的输入框-应用快速启动uTools
uTools uTools是一个 极简.插件化.跨平台 的现代桌面软件.通过自由选配丰富的插件,打造你得心应手的工具集合. 当你熟悉它后,能够为你节约大量时间,让你可以更加专注地改变世界. uTool ...
- 我还在生产玩 JDK7,JDK 15 却要来了!|新特性尝鲜
自从 JDK9 之后,每年 3 月与 9 月 JDK 都会发布一个新的版本,而2020 年 9 月即将引来 JDK15. 恰巧 IDEA 每四五个月会升级一个较大的版本,每次升级之后都会支持最新版本 ...
- Python利用Twilio(国际)以及腾讯云服务做一些事情
短信服务验证服务已经不是什么新鲜事了,但是免费的手机短信服务却不多见,本次利用Python3.0基于Twilio和腾讯云服务分别来体验一下国际短信和国内短信接口. 首先,注册Twilio: www.t ...
- Redis服务之Redis Cluster
在上一篇博客中我们聊到了redis的高可用组件sentinel的相关配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13429776.html:sentin ...
- 内网 Maven 编译
内网 Maven 编译 有个特殊的需求,在不联网的情况下编译 Java 项目. 想到两种方案: 搭建 Nexus 私有镜像仓库. 直接把依赖 jar包 放在编译机的 maven 本地库中. 步骤简述 ...
- Vue组件通信之子传父
子组件向父组件通信主要通过自定义事件实现. 这里我记录一个小例子来帮助自己记忆. 通过点击子组件的按钮去执行父组件的函数并使用子组件传来的数据. 子组件定义如下: <template id=&q ...
- C#LeetCode刷题-随机数
随机数篇 # 题名 刷题 通过率 难度 470 用 Rand7() 实现 Rand10() 34.4% 中等 478 在圆内随机生成点 22.8% 中等 497 非重叠矩形中的随机点 22 ...