IDEA DeBug
文章目录
- 01_Debug简介和意义
- 02_IDEA中的Debug步骤
- 03_跳转到当前代码执行的行
- 04_步过调试的使用
- 05_步入调试的使用
- 06_强制步入调试的使用
- 07_步出调试的使用
- 08_回退断点调试的使用
- 09_运行到光标处
- 10_计算表达式
- 11_条件断点
- 12_多线程调试
01_Debug简介和意义
- 什么是程序DeBug?
- Debug,是程序开发人员必会的一项调试程序的技能。
- 企业中程序开发和程序调试的比例为1:1.5,可以说如果你不会调试程序,你就没有办法从事编程工作。
- Debug能帮助我们做什么?
- 追踪代码的运行流程。
- 程序运行异常定位。
- 线上问题追踪。
- Debug对于程序学习者的意义
- 通过调试能够更好的查看程序的执行流程。
- 复杂的程序逻辑,通过老师的口述讲解,很难理解清楚,这个时候借助调试能够很好的帮助同学们理解程序。
- 定位问题,提高自我解决问题的能力。
02_IDEA中的Debug步骤
- 设置断点(F9)
- 调试程序(8个按钮)

| 按钮 | 说明 |
|---|---|
![]() | (Alt + F10):如果你的光标在其它行或其它页面,点击这个按钮可跳转到当前代码执行的行 |
![]() | (F8):步过,一行一行地往下走,如果这一行上有方法不会进入方法。 |
![]() | (F7):步入。如果当前行有方法,可以进入方法内部,一般用于进入自定义方法内,不会进入官方类库的方法。 |
![]() | (Alt + Shift + F7):强制步入,能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法。 |
![]() | (Shift + F8):步出,从步入的方法内退出到方法调用处,此时方法已执行完毕,只是还没有完成赋值。 |
![]() | 回退断点。 |
![]() | (Alt + F9):运行到光标处,你可以将光标定位到你需要查看的那一行,然后使用这个功能,代码会运行至光标行,而不需要打断点。 |
![]() | (Alt + F8):计算表达式。 |
- 观察变量
- 查看变量有三种方式:
- 程序区查看变量
- Debugger的Variables中查看变量
- 鼠标悬停到变量名上会弹出当前变量的值
- 查看变量有三种方式:

- 查看输出
03_跳转到当前代码执行的行
- 跳转到当前代码执行的行(Alt + F10)

- 作用
- 使程序窗口切换到当前正在运行的程序处。
04_步过调试的使用
- 步过调试
- 步过调试按钮(F8)

- 步过调试按钮(F8)
- 作用
- 步过,一行一行地往下走,如果这一行上有方法不会进入方法。
- 常用于调试过程中不想进入调用的方法体的情况。
05_步入调试的使用
- 步入调试
- 步过调试按钮(F7)

- 步过调试按钮(F7)
- 作用
- 步入,一行一行地往下走,如果这一行上有方法,则进入方法内部。
- 一般用于进入自定义方法内,不会进入官方类库的方法。
06_强制步入调试的使用
- 强制步入调试
- 强制步入调试按钮(Alt + Shift + F7)

- 强制步入调试按钮(Alt + Shift + F7)
- 作用
- 进入官方类库方法
- 帮助我们学习和查看JDK源码
07_步出调试的使用
- 步出调试
- 步出调试按钮(Shift + F8)

- 步出调试按钮(Shift + F8)
- 作用
- 从方法内退出到方法调用处。
- 调试的时候,有时候会跳入到自己不想查看的方法体,这个时候使用步出。
08_回退断点调试的使用
- 回退断点
- 回退断点按钮

- 回退断点按钮
- 作用
- 回退到当前方法的调用处。
- 当想重新查看该方法体的执行过程时,不用重新启动Debug,可以使用回退断点方式。
09_运行到光标处
- 运行到光标处
- 运行光标处按钮 (F9)

- 作用
- 使程序运行到光标处,而无需设置断点。
- 运行光标处按钮 (F9)
10_计算表达式
- 计算表达式
- 计算表达式按钮(Alt + F8)


- 计算表达式按钮(Alt + F8)
- 作用
- 设置变量,在计算表达式的框里,可以改变变量的值,这样有时候就能很方便我们去调试各种值的情况了。
11_条件断点
- 条件断点
- 右键单击断点处,可以设置进入断点的条件

- 右键单击断点处,可以设置进入断点的条件
- 作用
- 通过设置断点条件,在满足条件时,才停在断点处,否则直接运行。
12_多线程调试
- 步骤
- 多线程调试,需要调整断点挂起级别为Thread

- Frame中选择线程进行调试
- 多线程调试,需要调整断点挂起级别为Thread

相关文章:
IDEA DeBug
文章目录 01_Debug简介和意义02_IDEA中的Debug步骤03_跳转到当前代码执行的行04_步过调试的使用05_步入调试的使用06_强制步入调试的使用07_步出调试的使用08_回退断点调试的使用09_运行到光标处10_计算表达式11_条件断点12_多线程调试 01_Debug简介和意义 什么是程序DeBug&am…...
本地部署 ComfyUI
本地部署 ComfyUI ComfyUI 介绍ComfyUI Github 地址部署 ComfyUI配置模型地址 or 下载模型启动 ComfyUI访问 ComfyUI使用技巧页面底部显示图片预览改变连接线的格式配置 prompt 自动补全 安装 ComfyUI-Manager安装 AIGODLIKE-COMFYUI-TRANSLATION安装 ComfyUI-Custom-Scripts安…...
RHCE---给openlab搭建web网站
作业:请给openlab搭建web网站 网站需求: 1.基于域名 www.openlab.com 可以访问网站内容为 welcome to openlab!!! 2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站, 1、基于 www.openlab.com/student 网站访问学生信…...
[BJDCTF2020]The mystery of ip1
提示 ssti模板注入head头x-forwarded-for 每一次做题的最开始流程都大致因该是 信息收集找可以操控的地方 查看hint页面的源代码又发现它提示说 ####你知道为什么会知道你的ip吗 查看flag页面 从刚才给我的提示以及他这里显示的我的ip,大概找到了我可操作的可控点 …...
常见树种(贵州省):021冬青、连香树、白辛树、香合欢、云贵鹅耳枥、肥牛树、杜英、格木、黄连木、圆果化香树、南天竹
摘要:本专栏树种介绍图片来源于PPBC中国植物图像库(下附网址),本文整理仅做交流学习使用,同时便于查找,如有侵权请联系删除。 图片网址:PPBC中国植物图像库——最大的植物分类图片库 一、冬青 …...
[论文阅读]CBAM——代码实现和讲解
CBAM 论文网址:CBAM 论文代码:CBAM 本文提出了一种卷积块注意力模块(CBAM),它是卷积神经网络(CNN)的一种轻量级、高效的注意力模块。该模块沿着通道和空间两个独立维度依次推导注意力图&#x…...
蓝桥杯第2119题 特殊时间 C++ 思维暴力
题目 思路和解题方法 1110 代表 1110年11月10号11点10分1110 4*4*4 有0111 1011 1101 1110 可以符合年 月日 时分秒的都有4种例如 1113有1113 1131 1311 3111 年份符合月日只有11 13 时分秒 只有11 13 11 31 13 11 无31 11 c 代码 #include <bits/stdc.h> using…...
Modbus RTU协议及modbus库函数使用
一、与Modbus TCP的区别 在一般工业场景使用modbus RTU的场景还是更多一些,modbus RTU基于串行协议进行收发数据,包括RS232/485等工业总线协议。 与modbus TCP不同的是RTU没有报文头MBAP字段,但是在尾部增加了两个CRC检验字节(CRC…...
Linuxfork,写时拷贝
1.prinf隐藏的缓冲区 1.思考:为什么会有缓冲区的存在? 2.演示及思考? 1).演示缓存区没有存在感 那为什么我们感觉不到缓冲区的存在呢?我们要打印东西直接就打印了呢? 我们用代码演示一下: 比如打开一个main.c,输入内容如下: #include <stdio.h> int main() { …...
Android控件全解手册 - 自定义实现水波进度
Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列...
Halcon Solution Guide I basics(4.1): Blob Analysis 自主练习
文章目录 文章专栏前言自主练习题目输出电路板焊点个数解决方案:正确率:90 文章专栏 我的Halcon开发 CSDN 专栏 Halcon学习 练习项目gitee仓库 CSDN Major 博主Halcon文章推荐 随笔分类 - Halcon入门学习教程 前言 为了更加熟练的掌握Halcon的练习,我之…...
视频网站适合租用服务器吗?
视频网站适合租用服务器吗? 谈到服务器租用,在服务器租用市场中,通常比较常见的用户群体有电商、外贸和视频等网站。在这里相信很多用户都有疑问:租用的服务器适不适合用来建立视频网站呢?接下来我们一起来看看吧~ 首…...
2024年度投资策略:AI大模型和半导体国产化加速
今天分享的是AI系列深度研究报告:《2024年度投资策略:AI大模型和半导体国产化加速》。 (报告出品方:东方证券) 报告共计:48页 前言: 行情回顾与未来展望 电子板块涨幅转正,信心逐渐回归。截至…...
【Amazon】创建Amazon EFS 文件系统并将其挂载到Amazon EC2实例
文章目录 1. Amazon EFS文件系统2. Amazon EFS文件系统工作原理图3. 创建Amazon EFS 文件系统操作步骤3.1 创建安全组3.2 创建 EFS 文件系统3.3 启动 EC2 实例并挂载文件系统 4.清理资源4.1 终止 EC2 实例4.2 删除 EFS 文件系统 5.参考链接 1. Amazon EFS文件系统 Amazon EFS …...
微机原理_5
一、单项选择题(本大题共15小题,每小题3分,共45分。在每小题给出的四个备选项中,选出一个正确的答案,请将选定的答案填涂在答题纸的相应位置上。) 8086微处理器CLK引脚输入时钟信号是由(提供。 A. 8284 B. 8288 C.8287 D. 8289 2.下面4个寄存器中,不能作为间接寻址的寄存器是(…...
我的128天创作纪念日
嘿,大家好!今天我想和大家聊一聊CSDN创作者128天纪念日的话题。 机缘 首先,让我们来谈谈机缘。作为CSDN创作者,我们都有自己的创作机缘。可能是因为对某个领域感兴趣,可能是因为想要分享自己的知识和经验,…...
【高可用架构】Haproxy 和 Keepalived 的区别
Haproxy 和 Keepalived 的区别 1.负载均衡器介绍2.Haproxy 和 Keepalived 的基本概念和特点2.1 Haproxy2.2 Keepalived 3.Haproxy 和 Keepalived 的区别3.1 功能上的区别3.2 架构上的区别3.3 配置上的区别 4.总结 1.负载均衡器介绍 负载均衡器是一种解决高并发和高可用的常用的…...
python-opencv 人脸68点特征点检测
python-opencv 人脸68点特征点检测 不是很难,主要还是掉包,来看一下代码啊: # coding: utf-8 # 导包 import numpy as np import dlib import cv2class face_emotion(object):def __init__(self):# 人脸检测器对象,通过它拿到人…...
无线网络下VMWare+CentOS7使用桥接模式无法联通网络问题
因为最近新配了台带无线网卡的主机,所以准备把所有的内容都转移到新电脑上,其中就包括虚拟机 安装好VMWareCentOS7选择桥接模式 然后我们去修改一下网络配置 cd /etc/sysconfig/network-scripts/进入这个ifcfg-ens33文件 我们修改箭头所示内容ÿ…...
vue2.x中使用JS与路由守卫配置、vue2.x中使用TS与路由守卫的配置和vuex的配置以及TS在vue2.x中的使用说明
vue2.x 事件修饰符 <button click.stop.self"handleDelete(item)"></button>在使用 $confirm 时,使用 await 方式时,需要添加 catch 回调,否则无法获取 $confirm 关闭和取消时的标识值,并且后续代码停止执…...
x64dbg调试器完全指南:5步掌握Windows逆向工程核心技术 [特殊字符]
x64dbg调试器完全指南:5步掌握Windows逆向工程核心技术 🚀 【免费下载链接】x64dbg An open-source user mode debugger for Windows. Optimized for reverse engineering and malware analysis. 项目地址: https://gitcode.com/gh_mirrors/x6/x64dbg …...
LVS调度算法怎么选?从零到一搭建一个压测环境,用ab命令告诉你WLC和RR的真实差距
LVS调度算法实战评测:WLC与RR在真实业务压力下的性能对决 当Web服务流量突破单机处理极限时,负载均衡成为系统架构的必选项。作为Linux生态中最成熟的四层负载均衡方案,LVS(Linux Virtual Server)凭借内核级转发的高性…...
SEAL库CKKS实战:手把手教你调参避开‘scale out of bounds’报错(附8192模数配置)
SEAL库CKKS实战:手把手教你调参避开‘scale out of bounds’报错(附8192模数配置) 在同态加密的实际应用中,微软SEAL库的CKKS方案因其支持浮点数运算的特性而备受开发者青睐。然而,许多初入门的开发者在尝试实现复杂计…...
LeetCode 最长回文子串:python 题解苑
1 实用案例 1.1 表格样式生成 本示例用于生成包含富文本样式与单元格背景色的Word表格文档。 模板内容: 渲染代码: # python-docx-template/blob/master/tests/comments.py from docxtpl import DocxTemplate, RichText # data: python-docx-template/bl…...
从YOLO到餐桌:构建校园食堂智能结算系统的实战指南
1. 为什么选择YOLO做食堂智能结算? 在校园食堂这种特殊场景下,菜品识别面临着诸多挑战:餐盘堆叠造成的遮挡、反光餐具带来的光线干扰、相似菜品的细微差异(比如青椒炒肉和土豆炒肉)。传统图像处理方法需要针对每种菜品…...
MongoDB(90)如何使用Mongoose进行ORM操作?
Mongoose 是一个 MongoDB 对象建模工具,提供了一种在 Node.js 环境中优雅地与 MongoDB 进行交互的方法。它提供了数据验证、查询构建、业务逻辑挂钩等功能。下面详细介绍如何使用 Mongoose 进行 ORM 操作。 一、安装和配置 Mongoose 1. 安装 Mongoose 通过 npm 安装…...
Linux下Python连接MySQL报错‘libstdc++.so.6: cannot allocate memory in static TLS block’的保姆级修复指南
Linux下Python连接MySQL报错‘libstdc.so.6: cannot allocate memory in static TLS block’的保姆级修复指南 最近在Linux服务器上部署Python应用时,不少开发者遇到了一个令人头疼的错误:当尝试通过mysqlclient连接MySQL数据库时,系统抛出li…...
、SEATA分布式事务——XA模式嘶
MySQL 中的 count 三兄弟:效率大比拼! 一、快速结论(先看结论再看分析) 方式 作用 效率 一句话总结 count(*) 统计所有行数 最高 我是专业的!我为统计而生 count(1) 统计所有行数 同样高效 我是 count(*) 的马甲兄弟…...
**deepseek-v3.2写小说软件2025解析,揭秘AI辅助创作如何提升故事连贯性与角色深度**
deepseek-v3.2写小说软件2025解析,揭秘AI辅助创作如何提升故事连贯性与角色深度据中国作家协会网络文学中心发布的《2025年中国网络文学创作生态报告》显示,2025年国内网络文学市场规模预计突破680亿元,但日均更新量超过8000字的全职作者中&a…...
“听劝!”预算1k内吉他别瞎买:雅马哈/布洛克/费森横评,这款单板琴让我惊掉下巴!
准备买第一把吉他了,是不是既兴奋又有点慌?面对琳琅满目的品牌和从几百到几千的价格,心里直打鼓: 太便宜的是不是“烧火棍”?太贵了又怕自己坚持不下去浪费钱。 更怕的是,花了钱买回家,发现声音…...








