idea中的debug操作详解

news2024/9/23 23:33:48

行断点

默认模式

方法断点

菱形,加在方法前,用的比较多的地方:加在接口前会进入这个接口的实现类。

异常断点

如果说你的程序抛了某个异常,你需要知道在哪里抛出的,可以直接设置异常断点,设置后程序会在异常抛出的位置停下来:

属性断点

用于观察属性值变化的断点,通过点击resume,可以直接调转到被监控的属性发生值改变的代码行。

详细解释一下每个按钮(按钮对应图中的数字)所具有的功能,具体如下图所示:

“1”按钮含义rerun XXX,这个是直接重新跑某个程序

“2”按钮含义相当于eclipse里面的f8,直接跑完,到下一个断点停下,没有就直接跑完程序

“3”按钮含义停止项目或者程序。要是自己的main呢,点一下就停下了,要是Java web项目,则点2下,就把服务器给停了。

“4”按钮含义查看所有的断点设置情况。

“5”按钮含义直接取消所有断点,让所有断点无效。

“6”按钮含义如果下面的排版布局乱了,可以点这个按钮,它就会把下面的布局给还原。

“7”按钮含义:显示执行端点(Alt + F10)。跳转到当前代码所执行的地方,也就是说你在看代码的时候,点到其他地方,一点这个按钮,就到了程序执行到当前哪行的代码的地方。

“8”按钮含义:跳到下一步(F8)。下一步,如果是方法,他是不会跳进去的。就是一行行的往下走。(eclipse里面的快捷键就是f6)

“9”按钮含义:进入代码或者说进入到方法内部(F7)。跳转到详情,如果下一行调试代码是可执行方法,就可以f5进去,查看这个方法的运行详细情况,重点就是点进去执行。

“10”按钮含义:强制进入代码或者说进入到方法内部(Alt + Shift + F7)。逐步跳转,如果下一行调试代码是可执行方法,不会进入方法的内部方法中调试代码,只会逐步进行,不会多级跟进跳转方法。

“11”按钮含义:跳到下一个断点或者跳出方法(Shift + F8)。从详情跳出去,和上面的“9”相反。

“12”按钮含义:放弃当前debug,重新执行debug。当调试代码时进入方法体之后,若果还想回退到方法体外,点这个按钮后,断点重新回到方法体之外。在继续还是可以再次进到方法内。

“13”按钮含义:运行到光标处(Alt + F9)。看字面意思就是跳转到那个光标所在的地方,前提是他能路上没断点拦着。

“14”按钮含义看意思,同eclipse里面的watch,查看某个对象的值,自定义的对象。

“15”按钮含义把自定义的查看对象的值,分开到另一个tab页。

“16”按钮含义这个点开之后,可以计算你想要看的代码段的值。

查看断点处的某个对象的值,如下几个方法:

1)选中对象后,鼠标悬停在对象上 2 秒左右

2)在watch里面添加这个对象

3)代码中有时会自动列出来你代码里面有的值

4)使用上面图上标注的“16”的那个按钮

5)alter + click,按住alter,然后点击想看的变量,就出现变量的值

下面详细讲述一下“4”,“14”,“16”号按钮的作用,以及使用方法。

按钮“4”,查看所有的断点的详情,点击按钮如下所示:

关于设置断点条件还可以直接在代码断点处,右键设置,完成后后,Done,设置完成,具体如下图所示:

按钮“14”,自行添加,你想查看的变量的值,如图所示:

在调试代码过程中,实时修改运行状态的代码变量的值,(num变量原来被赋值是100,在watches里重新赋值为99,之后num变量的值就是修改后的值了)如图所示:

按钮“16”,可以根据你的输入,计算你要的结果,不局限代码里面的变量是什么。这个在Debug的时候,使用起来是相当方便,具体如图所示:

调试代码的时候,设置运行时的参数,如下图所示:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/488542.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Shell脚本之循环语句(for、while、until)

目录 一、echo命令二 for循环语句三 while循环语句结构(迭代)四. until 循环语句结构五.continue和break和exit 一、echo命令 ?echo -n 表示不换行输出 echo -e 输出转义字符,将转义后的内容输出到屏幕上 常见转义字符: 二 for循环语句 用法…

Baumer工业相机堡盟工业相机如何通过BGAPI SDK设置自动亮度调整BrightnessAuto(自动曝光自动增益)(C++)

自动亮度调整项目场景 Baumer工业相机堡盟相机是一种高性能、高质量的工业相机,可用于各种应用场景,如物体检测、计数和识别、运动分析和图像处理。 Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分辨率图像。此外&#xff0…

北斗哨兵北斗短报文远程监控系统解决方案

一、项目背景 随着社会发展各行各业都会遇到各种各样的安全问题,监控系统作为安防的第一线安防设备也已广泛部署,然而地处偏僻的监控区域往往面临着难以提供电力供应以及网络供应的问题,类似于山区环境监测,工地监测等复杂的环境布…

Web自动化测试流程:从入门到精通,帮你成为测试专家

B站首推!2023最详细自动化测试合集,小白皆可掌握,让测试变得简单、快捷、可靠https://www.bilibili.com/video/BV1ua4y1V7Db 目录 摘要: 步骤一:选取测试工具 步骤二:编写测试用例 步骤三:编…

5月4号软件资讯更新合集.....

🚀 Layui 2.8.2 发布 更新日志 table 修复 autoSort: true 时,更改 table.cache 未同步到 data 属性的问题 修复 多级表头存在 hide 表头属性时,执行完整重载可能出现的错位问题 修复 未开启 page 属性时底边框缺失问题 优化 打印内容中…

大型游戏剧本杀小程序app

大型游戏剧本杀小程序的发展趋势主要表现为以下几个方面: 社交互动:未来大型游戏剧本杀小程序将会更加注重社交互动,为用户提供更多的沟通方式和社交场景,以增强玩家间的互动和参与感。 智能化和AR/VR技术应用&#xff1a…

网络基础项目——全网互通实验

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 前言 本章将会讲解网络基础项目——全网互通实验。 一.实验项目图 二.实验要求 1.全网互通,所有PC机能访问服务器(ping)2.路由器…

DA-Net:用于视网膜血管分割的双分支Transformer和自适应条带上采样

文章目录 DA-Net: Dual Branch Transformer and Adaptive Strip Upsampling for Retinal Vessels Segmentation摘要本文方法整体框架Transformer LayerAdaptive Strip Upsampling Block 实验结果消融实验 DA-Net: Dual Branch Transformer and Adaptive Strip Upsampling for R…

【Python习题集6】类与对象

类与对象 一、实验内容二、实验总结 一、实验内容 1.设计一个Circle类来表示圆,这个类包含圆的半径以及求面积和周长的函数。在使用这个类创建半径为1~10的圆,并计算出相应的面积和周长。 半径为1的圆,面积: 3.14 周长: 6.28 半径为2的圆&am…

【虹科案例】虹科任意波形发生器板卡在声场模拟实验中的应用

声场模拟实验介绍 声场模拟实验是一种通过模拟不同环境下的声场特征来模拟真实世界中声音传输情况的实验方法。通过模拟不同环境下的声场特征,如空间分布、强度、频率等,来模拟真实世界中的声音传输情况,从而对声学相关问题进行研究。 在声…

Java集合框架知识总结

前言 Java集合框架主要由两个接口及其下面的实现类构成,这两个接口分别是Map接口和Collection接口,下面先通过其对应的UML类图看下这两个接口的具体实现,如下 1、Map接口 Map接口的主要实现有我们熟悉的HashMap、HashTable以及TreeMap、Con…

信息技术发展

OSI网络标准协议 物理层:联网的媒介 RS232 FDDI 数据链路层: 网络层接收到的数据分割成可被物理层传输的帧 IEEE802.3/.2 ATM 网络层:网络地址翻译成对应的物理地址,路由 IP ICMP IGMP IPX ARP 传输层:端到端的错误恢复和流量控制…

轻松提升投标技术分?smardaten高性价比原型服务受热捧

日前,某个交通领域的软件公司A遇到了难题,十多个在跟的项目需要在一个月内完成投标准备工作。 应用软件“强甲方需求”的大环境下,A公司又陷“投标高峰期”。 更具挑战性的是,其中,有5个项目要求应标企业提供真实系统的…

一文介绍Linux EAS

能量感知调度(Energy Aware Scheduling,简称EAS)是目前Android手机中Linux线程调度器的基础功能,它使调度器能预测其决策对CPU能耗的影响。依靠CPU的能量模型(Energy Model,简称EM),…

steam搬砖,适合个人操作的创业项目

这个项目主就是在Steam平台买进CSGO道具,再放到网易buff平台卖出。因为进价低出价高,所以每卖出一件道具,利润都相当可观。 关键这玩意背靠Steam这个超大平台,日活几千万,几乎覆盖了市面上的所有热门游戏,…

动态规划——逆序对

逆序对Time Limit: 1000 MSMemory Limit: 5000 KB Description 给定一个长度为N的int型数组a[0,1,2,...N-1], 请计算逆序对个数.当i<j且a[i]>a[j], 则称a[i]与a[j]是一对逆序对.Input 第一行输入M表示包含M组测试数据&#xff0c;每组先输入N (N<50000), 接着输入N…

ios app真机测试到上架App Store详细教程-必看

​转载&#xff1a;https://blog.csdn.net/p312011150/article/details/89374401 ios app真机测试到上架App Store详细教程-必看 Appuploader常见问题 转存失败 重新上传 取消 上架基本需求资料 1、苹果开发者账号&#xff08;如还没账号先申请-苹果开发者账号申请教程&…

​​​​魔兽服务端自定义创建传送门教程

魔兽服务端自定义创建传送门教程 大家好我是艾西,今天跟大家分享下魔兽自定义传送门怎么创建。玩过魔兽的朋友都知道,魔兽这游戏内容多地图也非常大,一个老魔兽玩家很熟悉跑副本的情况下从这个地图到下一个地图都得跑半个小时,更何况对于很多得新手小伙伴了,所有顾及到大…

CUDA编程之矩阵乘法

文章目录 一、矩阵乘法回顾二、CUDA内存架构CUDA中的共享内存CUDA中的共享内存使用方法静态申请内存动态申请内存 三、分解矩阵乘法 / 平铺矩阵乘法四、实战代码DS_M 和 DS_N的索引方式解释 一、矩阵乘法回顾 CPU版本&#xff1a; GPU版本&#xff1a; 核函数如下&#xff1…

JeecgBoot低代码平台—默认模糊查询以及高级查询规则

JeecgBoot低代码开发平台&#xff0c;自己封装了一套查询过滤器&#xff0c;默认就支持模糊查询&#xff0c;只是需要前后加上*&#xff0c;虽然麻烦&#xff0c;但是这样是考虑到系统后期数据量大默认模糊查询会导致系统性能问题。当然如果你的系统数据量级别达不到这个情况&a…