idea怎么调试,idea怎么一步一步的调试

前言idea怎么一步一步的调试,上一篇文章算是IntelliJIDEA高级调试技巧的开胃菜,小伙伴们被这个小技巧征服,趁热打铁,今天给大家带来几个大家日常工作以及阅读源码必备的高级调试技巧断点处添加l

前言

idea怎么一步一步的调试,上一篇文章算是 IntelliJ IDEA 高级调试技巧的开胃菜,小伙伴们被这个小技巧征服,趁热打铁,今天给大家带来几个大家日常工作以及阅读源码必备的高级调试技巧

断点处添加 log

很多程序员在调试代码时都喜欢 print

remote

log tree

IntelliJ IDEA 提供 Evaluate and Log at Breakpoints

public static void main(String[] args) {ThreadLocalRandom random = ThreadLocalRandom.current();int count = 0;for (int i = 0; i < 5; i++) {if (isInterested(random.nextInt(10))) {count++;}}System.out.printf(&34;,count);}private static boolean isInterested(int i) {return i % 2 == 0;}

假如我们想在第 15 行查看每次调用,随即出来的 i 的值到底是多少,我们没必要在这个地方添加任何 log,在正常加断点的地方使用快捷键 Shift + 鼠标左键

勾选上 Evaluate and log

&34; + i

interested 7interested 5interested 1interested 2interested 0Found 2 interested values

如果你想要更详细的信息,那就勾选上 Stack trace

字段断点

如果你阅读源码,你一定会有个困扰,类中的某个字段的值到底是在哪里改变的,你要一点点追踪调用栈,逐步排查,稍不留神,就可能有遗漏

方法 1、以下面这段代码为例,首先设置断点,如图所示,然后点击菜单栏上的“甲壳虫”标识,进入debug页面。2、debu页面如图 3、按F6进行调试。如图所示,“variables”表示的是变量的值的变化 代码进行到哪一步,那一步就会。

我们可以在 IntelliJ IDEA 中为某个字段添加断点,当字段值有修改时,自动跳到相应方法位置

使用起来很简单:

在字段定义处鼠标左键添加断点(会出现「眼睛」的图标)

1、Evaluate Expression 表达式求值。Alt + F8 2、Run to Cursor。Alt + F9 3、调试过程中手动改变值。在debug区选中参数,按F2.快捷键运行:ctrl+shift+F10 查看历史运行列表:alt + shift + F9 。

在「眼睛」图标上鼠标右键

在弹框中勾选上 Field access

Field modification

如果修改字段值的方法比较多,也可以在 Condition

异常断点

除了阅读源码,一定是遇到了异常我们才开始调试代码,代码在抛出异常之后会自动停止,但是我们希望:

代码停在抛出异常之前,方便我们查看当时的变量信息

这时我们就用到了 Exception Breakpoints

NumberFormatException

知道异常类型后,就可以按照如下步骤添加异常断点了:

然后在弹框中选择 NumberFormatException

重新以 Debug 模式运行程序:

工作中使用到jdk8 中的Stream 流,需要调试其执行过程中的数据,可以使用下面方法:进入debug模式,选择下面按钮 进入stream流调试:点击相应按钮,执行对应动作,调试 欢迎指正!

idea怎么调试

程序「一路绿灯式」定位到抛出异常的位置,同时指出当时的变量信息,三个字:稳,准,狠,还有谁?

方法断点

idea怎么调试

ctrl+F8

鼠标左键在方法处点击断点(♦️形状)

断点上鼠标右键

勾选上绿色框线上的内容,同样可以自定义跳转条件 Condition

当以 Debug 模式运行程序的时候,会自动进入实现类的方法(注意断点形状):

看到这你应该想到常见的 Runnable 接口中的 run 方法了,同样是有作用的,大家可以自行去尝试了

总结

相信有以上四种调试技巧的加成,无论是工作debug 还是私下阅读源码,都可以轻松驾驭了。最后,来看看 IDEA 支持的各种断点调试类型,如果你只知道红色小圆点,那咱在留言区好好说说吧

趣味原创解析Java技术栈问题,将复杂问题简单化,将抽象问题图形化落地如果对我的专题内容感兴趣,或抢先看更多内容,欢迎访问我的博客

上一篇 2023年02月06 20:48
下一篇 2023年02月17 13:07

相关推荐

  • 老缝纫机多少钱一台,老式缝纫机的价格是多少钱

    “缝纫机”听起来就是个很有年代感的词,说起来也是以前的结婚“四大件”之一,因为在七八十年代,缝纫机可是个值钱又好用的物件,老式缝纫机的价格是多少钱,算是当时的“时髦货”了。,家里的女人,节约好久买上几

    2023年03月02 268
  • 怎么找回微信好友,微信删除半年的好友怎么找回

    分享最实在的玩机技巧,洞察最前沿的科技资讯!大家好,这里是手机科技园!有时候因为一时的冲动,或者不小心把微信好友删除了,然而需要联系对方的时候,微信删除半年的好友怎么找回,却找不到对方的微信号,这时候

    2023年02月11 232
  • 电子邮件地址怎么填,确认电子邮件地址怎么填

    光明网投稿及联系方式(光明日报投稿邮箱地址)。如果你想向光明网投稿,可以通过以下方式联系他们。1:光明网投稿2:联系方式一、电子邮件地址怎么写xxxx@zz.com@前面的xxxx是用户名,@后面的z

    2023年02月15 285
  • 寄快递需要多少钱,寄一个小小的快递多少钱

    现在快递是我们每家每户都会收到的东西,因为现在越来越多人开始喜欢网购,主要就是比实体店便宜一些,还有就是比较懒出门逛街的人,都会选择网上购物,寄一个小小的快递多少钱,但不知道小伙伴们有寄过快递吗?因为

    2023年03月09 259
  • 怎么连接,怎么样连接第二个路由器

    铆接、焊接、胶接和过盈连接概述铆接铆接是将铆钉穿过被连接件的预制孔中经铆合而成的连接方式。其连接部分称为铆缝。焊接焊接是利用局部加热(或加压)的方法使被连接件接头处的材料熔融连接成一体。胶接胶接是用胶

    2023年02月08 233
  • 怎么查询流量,中国移动剩余流量查询

    随着企业向云迁移、5G落地、物联网设备激增、网络爆炸、网络流量变得海量复杂,企业经常会遇到网络拥塞和服务质量低等一系列问题,加强网络管理和改善网络的运行己成为当务之急,如何有效识别、监测、分析网络流量

    2023年02月09 224
  • 怎么查询个人信息,输入姓名可以查身份证的软件

    国家政务服务平台接入由人力资源和社会保障部提供的全国职称评审信息查询(试运行)服务1.社保中心查询如果对自己的社保帐号不清楚,可以携带身份证到各区社会保险经办机构业务办理大厅查询。2.上网查询登陆所在

    2023年02月13 219
  • 设备锁怎么解除,手机设备锁密码忘了怎么解锁

    IT之家2月1日消息,手机设备锁密码忘了怎么解锁,二手MacBook市场越来越不好卖了。根据国外科技媒体Vice报道,苹果的T2安全芯片给二手MacBook市场带来了巨大的麻烦。布姆斯特德在推文中调侃

    2023年02月14 218
  • 怎么联系qq客服,qq客服如何转人工

    根据《广州市社会组织管理局关于做好2021年度全市性社会组织年度工作报告的通知》要求,全市性社会组织应于2022年5月31日前在广州市社会组织信息平台填报2021年年度报告。为指导全市性社会组织规范有

    2023年02月14 220
  • 黑板长多少米,黑板大约多少厘米

    《铅笔有多长》教学设计配套课件、课堂实录私信领取课题名称《铅笔有多长》科目数学教学对象二年级作者教材版本北师大版年级/册数二年级下册课时第1课时一、教材分析单元学习内容的前后联系:本单元教学内容分析:

    2023年03月22 217
  • 光动能手表换电池多少钱

    一般电池价格一般石英表的电池可以用2,3年,换电池的话,国产如半球电池10元以内,日本电池如索尼,15元左右,瑞士电池要25元左右。有些朋友跟小编诉苦,去换电池人家一次收取两三百元,其实都是被坑了,最

    2023年03月30 235
  • 申通快递电话是多少

    申通快递2020年春节期间运营公告尊敬的广大新老客户:您好!申通快递电话是95543。申通快递品牌创建于1993年,隶属于上海盛彤实业有限公司。它是中国最早经营快递业务的品牌之一,也是中国主流快递公司

    2023年02月25 240
  • 顺丰冷链10斤多少钱,顺丰冷链价格表2023

    【亿邦动力网讯】7月3日消息,陕西直销油桃受到广泛关注后,电商、微商都纷纷展开助销行动,剧情似乎很快发生了反转。这让其他地区的果农受到启发,为其直销水果寻找网络销路。近日,福建漳州地区的滞销荔枝再次引

    2023年03月27 211
关注微信