前言

对于初入职场的萌新们来说,很多都还不会 Debug 断点模式。记得我刚写代码的时候,也是通过 System.out.println() 一行一行的把变量打印出来看。其实强大的编辑器已经帮我们做好了这个功能。今天就带大家了解一下这个功能。Debug 能让我们调试代码的时候如鱼得水步步高升。我是用的 idea 版本是 2020.1,每个版本可能略有差异,但是这并不影响我们的骚操作。

1.调试步骤

1.1 打断点

1.2 Debug模式运行

2.调试结果界面详解

2.1 Rerun

这个就是结束debug模式,直接以run的方式重新跑某个程序。


2.2 Resume

直接跑完, 到下一个断点停下, 没有就直接跑完程序。


2.3 Stop

停止项目或者程序。


2.4 View Breakpoints

查看所有的断点设置情况


项目中有时候打的断点多了,容易找不到断点的位置,这个按钮能够知道项目中所有的断点位置。效果如下:


2.6 Mute Breakpoints

直接取消所有断点. 让所有断点无效。


这个按钮可以使所有的断点失效,达到快速调试的目的。再次点击断点恢复生效。断点失效如下:


2.7 Show Execution Point

跳转到当前代码所执行的地方。 也就是说你在看代码的时候.,点到其他地方,点击这个按钮,光标就回到了程序执行到当前代码的地方。


2.8 Step over

下一步 如果是方法. 他是不会跳进去的。就是在当前代码一行行的往下走。直到程序结束


2.9 Step into

跳转到详情。如果下一行调试代码是可执行方法, 就可以点这个按钮进到方法内部去,查看这个方法的运行详细情况。只能进入你自己写的方法


当我们在 23 行时需要进到方法内部去看 numberAdd 执行过程的时候,这个按钮就能跳转到方法内部,执行完毕,dubug 断点会再次回到 23 行处。效果如下:


2.10 Force Step Into

暴力进入方法内部,一句话:Step Into 能做的,它能做,Step Into 不能做的,它也能做。非常适合用来调试第三方源代码。


2.11 Step out

从详情跳出去. 和上面的9相反。


点击 Step In 会进到方法内部,点击 Step Out 会回到最初的执行位置。效果如下:


2.12 Run to cursor

跳转到那个光标所在的地方,前提是他能路上没断点拦着(这个也很好用的,可以直接跳到下一个断点处)。


Run to Cursor 强大之处在于直接跳转,不用一行一行往下执行 Dubug 。效果如下:


2.13 Evaluate Exepression

这个点开之后. 可以计算你想要看的代码段的值。它能获取你想要的一切.


这个功能,相当于在 Dubug 的时候,在给 Debug 做一遍 Debug 。在字符串拼接的时候特别好用。计算效果效果如下:


不仅如此,还能展开面板,进行代码编写,相当强大。效果如下:


2.14 Drop Frame

有时候当我们步入方法体之后. 还想回退到方法体外. 点这个按钮后. 断点重新回到方法体之外。在继续还是可以再次进到方法内(这个很好的. 假设你手快. 跳过想断点的方法. 然后这个drop frame. 出去之后. 就可以再次debug啦。这个很是着重介绍一下, 就算你只打一个断点, 一不小心跑了,不怕,点这个退出,然后再执行,还是会再次进入断点的。这个很管用的, 要是不知道的话 ,就的再从头到尾的执行一遍, 很是麻烦。世界上没有后悔药,但是 Drop Frame 却可以重开。)

IntelliJ IDEA 2020.1.1 x64 Debug 断点调试模式详解的更多相关文章

  1. C# trace debug TraceListener调试信息详解

    在C#编程中,可能要碰到把调试信息输出的问题,我们可以自己把信息显示在某个控件上,但是MS自己提供了一套机制帮助我们输出一些调试信息,这些信息有助于我们判断程序的走向,不用自己再去额外写调试代码了. ...

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

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

  3. debug断点调试

    debug断点调试  1,虫子启动2,F6   执行断点的下一步,下一个语句     F5    进入方法     F8   执行到结束    查看表达式的值:选中查看的表达式,接着按   ctrl ...

  4. Intellij IDEA 2017 debug断点调试技巧与总结详解篇

    转载自csdn----------------------------------------------------------------------https://blog.csdn.net/q ...

  5. Eclipse debug断点调试代码时出现source not found问题

    偶尔调试代码的时候会出现这种事情,之前并没有特别注意,今天稍微搜集一下相关资料: 1.跳转到的代码的确没有源码,下载源码后选择源码位置后便会正常显示源码. 2.源码和class文件不一致.即便勾选了a ...

  6. myeclipse下对tomcat项目进行debug断点调试

    对于eclipse或myeclipse调试J2SE项目或小应用进行断点调试,大家都不陌生,只要设置断点,debug运行就OK了.但是如果是web项目,而项目是在容器中运行的,比如tomcat,resi ...

  7. 解决Eclipse Debug 断点调试的source not found问题

    写完代码进行调试的时候,经常会用到断点调试,一步步检测问题,但有时候eclipse有时候无法进入断点,这样就失去了断点的意义,原因是debug无法找到该项目的源代码,解决方法如下 1,打开debug ...

  8. 关于Eclipse Debug断点调试出现 Search not found 页面的解决办法

    1. 在代码中鼠标右键 Debug AS ---> Debug Configurations... ----> 找到Source选项  ---> 点击add ---> 选择 j ...

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

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

随机推荐

  1. IDE搬进浏览器里——JetBrains Projector

    发展 提起 JetBrains,你会想到什么?各路强大的 IDE,比如 Android Studio.IDEA.WebStorm--这些对于开发者来说耳熟能详的产品都出自这家公司,这些 IDE 的功能 ...

  2. Leetcode 78题-子集

    LeetCode 78 网上已经又很多解这题的博客了,在这只是我自己的解题思路和自己的代码: 先贴上原题: 我的思路: 我做题的喜欢在本子或别处做写几个示例,以此来总结规律:下图就是我从空数组到数组长 ...

  3. 通过SSE(Server-Send Event)实现服务器主动向浏览器端推送消息

    一.SSE介绍 1.EventSource 对象 SSE 的客户端 API 部署在EventSource对象上.下面的代码可以检测浏览器是否支持 SSE. if ('EventSource' in w ...

  4. 1.Thmeleaf模板引擎

    1.Thmeleaf的基本语法 大部分的Thmeleaf表达式都直接被设置到HTML节点中,作为HTML节点的一个属性存在,这样同一个模板文件既可以使用浏览器直接打开,也可以放到服务器中用来显示数据, ...

  5. 【HarmonyOS】【xml】使用xml绘制视频播放控制栏

    本文记录HarmonyOS使用xml绘制视频播放控制栏 效果图如下 代码如下 点击查看代码 <?xml version="1.0" encoding="utf-8& ...

  6. frp实现基于反向代理的内网穿透

    个人博客主页: xzajyjs.cn frp是什么 简单地说,frp就是一个反向代理软件,它体积轻量但功能很强大,可以使处于内网或防火墙后的设备对外界提供服务,它支持HTTP.TCP.UDP等众多协议 ...

  7. 磁盘管理LVM

    目录 一.简介 二.操作 环境简介 操作 一.简介 LVM全称为Logical Volume Management,它是Linux环境下对磁盘分区进行管理的一种机制,它可以将多个硬盘合成一个资源池,然 ...

  8. [BUUCTF]REVERSE——SimpleRev

    SimpleRev 附件 步骤: 例行查壳儿,,无壳,64位程序 64位ida载入,看main函数 关键代码段在Decry函数里 unsigned __int64 Decry() { char v1; ...

  9. M语言的藏身之地(Power Query 之 M 语言)

    M函数和M公式是Power Query专用的函数与公式,M代码是Power Query专用的用于实现查询功能的代码.M函数公式和M代码统称M语言. 查看M公式:[编辑栏] 查看方法:在Power Qu ...

  10. k8s-statefulset

    1. 简介 StatefulSet 是用来管理有状态应用的工作负载Api对象. StatefulSet 用来管理某 Pod 集合的部署和扩缩, 并为这些 Pod 提供持久存储和持久标识符. 和 Dep ...