01_Debug简介和意义

  • 什么是程序DeBug?

    • Debug,是程序开发人员必会的一项调试程序的技能。

    • 企业中程序开发和程序调试的比例为1:1.5,可以说如果你不会调试程序,你就没有办法从事编程工作。

  • Debug能帮助我们做什么?

    1. 追踪代码的运行流程。

    2. 程序运行异常定位。

    3. 线上问题追踪。

  • Debug对于程序学习者的意义

    1. 通过调试能够更好的查看程序的执行流程。

    2. 复杂的程序逻辑,通过老师的口述讲解,很难理解清楚,这个时候借助调试能够很好的帮助同学们理解程序。

    3. 定位问题,提高自我解决问题的能力。

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详解的更多相关文章

  1. Android签名详解(debug和release)

    Android签名详解(debug和release)   1. 为什么要签名 1) 发送者的身份认证 由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,以此保证签名不同的包 ...

  2. 汇编debug工具详解

    关于debug工具里的各个指令的用法 debug调试工具详解: r:可以查看,和改变寄存器中的内容具体用法:·直接输入r的时候,回车显示当前指向内存单元中所有寄存器中的内容,并将所指机器码翻译成汇编指 ...

  3. Android调试桥-Android Debug Birdge详解

    原文:http://android.eoe.cn/topic/summary Android调试桥-Android Debug Birdge Android调试桥(adb)是一个多功能的命令行功具,它 ...

  4. 转: Android 软件开发之如何使用Eclipse Debug调试程序详解(七)

    转自: http://www.uml.org.cn/mobiledev/201110092.asp Android 软件开发之如何使用Eclipse Debug调试程序详解(七)   发布于2011- ...

  5. 【转】 C# DEBUG 调试信息打印及输出详解

    [转] C# DEBUG 调试信息打印及输出详解 1.debug只在[debug模式下才执行](运行按钮后面的下拉框可选) 2.debug提供了许多调试指令,如断言          System.D ...

  6. (转)Intellij IDEA 2017 debug断点调试技巧与总结详解篇

    背景:详细介绍idea的debug调试过程 Intellij IDEA 2017 debug断点调试技巧与总结详解篇

  7. Intellij IDEA中使用Debug调试详解

    转载:https://www.linuxidc.com/Linux/2017-09/146772.htm   Intellij IDEA中使用Debug调试详解 Debug用来追踪代码的运行流程,通常 ...

  8. IntelliJ IDEA 2020.1.1 x64 Debug 断点调试模式详解

    前言 对于初入职场的萌新们来说,很多都还不会 Debug 断点模式.记得我刚写代码的时候,也是通过 System.out.println() 一行一行的把变量打印出来看.其实强大的编辑器已经帮我们做好 ...

  9. IDEA中 Debug 调试工具(图文详解)

    DEBUG调试工具 一. Debug 调试工具 1. Debug的作用 2. Debug的使用步骤 3. IDEA中Debug按钮详解 总结 参考博文:https://blog.csdn.net/qq ...

随机推荐

  1. Python 爬取网易云歌手的50首热门作品

    使用 requests 爬取网易云音乐 Python 代码: import json import os import time from bs4 import BeautifulSoup impor ...

  2. PHP is_callable() 函数

    is_callable() 函数用于检测函数在当前环境中是否可调用.高佣联盟 www.cgewang.com is_callable() 函数验证变量的内容能否作为函数调用. 这可以检查包含有效函数名 ...

  3. PHP max() 函数

    实例 通过 max() 函数查找最大值: <?phpecho(max(2,4,6,8,10) . "<br>");echo(max(22,14,68,18,15) ...

  4. luogu P4008 [NOI2003]文本编辑器 splay 块状链表

    LINK:文本编辑器 这个东西感觉块状链表写细节挺多 (块状链表本来就难写 解释一下块状链表的做法:其实是一个个数组块 然后利用链表给链接起来 每个块的大小为sqrt(n). 这样插入删除的时候直接暴 ...

  5. 区块链钱包开发 - USDT - 三、实战(nodejs版本)

    一.安装钱包 请参考另一篇随笔: 入口 二.获取测试usdt(TestOmni)步骤: 1.导入地址到钱包,往该地址充值测试比特币, 2.然后往 moneyqMan7uh8FqdCA2BV5yZ8qV ...

  6. 企业签名和TF签名哪个好?TF签名和企业签名怎么选?

    很多开发者在App无法上架Appstore,需要内测或者开放给苹果用户使用的时候,需要选择企业签名来帮助自己的App开放下载链接,给苹果用户使用.苹果企业签名的类型有很多,TF签名最近又很火爆,那么企 ...

  7. Linux恢复删除后数据文件

    简介 在使用Linux系统时,有时候会不小心误删除数据,由于Linux系统也没有与Windows系统下回收站类似的功能,一般会认为该文件将无法找回. 本文主要以CentOS7操作系统为例,介绍如何使用 ...

  8. 物联网实验Arduino(1)

    回顾 我们使用的平台: Arduino 入门实验1 眨眼睛 /* Blink Turns an LED on for one second, then off for one second, repe ...

  9. 029_go语言中的非阻塞通道

    代码演示 package main import "fmt" func main() { messages := make(chan string) signals := make ...

  10. 用python悄悄记录了室友的抖音在线时间

    今天给大家分享一篇有趣的文章,灵感来自于前几天与室友的聊天,他告诉我抖音可以实时显示人的在线情况,如下图: 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在 ...