前言

对于初入职场的萌新们来说,很多都还不会 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. JDBC(3):PreparedStatement对象介绍

    一,PreparedStatement介绍 PreperedStatement是Statement的子类,它的实例对象可以通过Connection.preparedStatement()方法获得,相对 ...

  2. 【编程思想】【设计模式】【结构模式Structural】桥梁模式/桥接模式bridge

    Python版 https://github.com/faif/python-patterns/blob/master/structural/bridge.py #!/usr/bin/env pyth ...

  3. BigDecimal 中 关于RoundingMode介绍

    RoundingMode介绍 RoundingMode是一个枚举类,有以下几个常量:UP.DOWN.CEILING.FLOOR.HALF_UP.HALF_DOWN.HALF_EVEN.UNNECESS ...

  4. 如何用CodeBlocks调试?

    一.简介 这篇文章我主要会介绍CodeBlocks的调试功能,并简单讲述如何使用它. 二.前言 大家好,最近和小伙伴们讨论修改程序的时候,我突然想到,授人以鱼不如授人以渔(指调试),于是这篇文章应运而 ...

  5. 按照eslint的规则格式化代码

    1.下载eslint. 2.首选项->设置,然后搜索eslint,点击在setting.json中设置.设置内容如下: "editor.codeActionsOnSave": ...

  6. Python __new__ 方法解释与使用

    解释 我们通常把 __init__ 称为构造方法,这是从其他语言借鉴过来的术语. 其实,用于构建实例的是特殊方法 __new__:这是个类方法(使用特殊方式处理,因此不必使用 @classmethod ...

  7. how2heap libc2.31学习

    今天是四月十九,想在五月份之前把how2heap中的高版本(2.31)的例子过一遍.所以这个系列目前还是在更新中.如果比较简单就几句话带过了,遇到难一点的会写的详细一点. fastbin_dup 源代 ...

  8. 2020信息安全铁人三项 pwn复盘

    第一赛区 hacknote 程序存在格式化字符串漏洞和uaf,不多说了,很简单. 1 from pwn import * 2 3 p = process('./hacknote') 4 elf = E ...

  9. [BUUCTF]PWN——xdctf2015_pwn200

    xdctf2015_pwn200 附件 步骤 例行检查,32位程序,开启了nx保护 本地试运行一下程序,看看大概的情况 32位ida载入,习惯性的检索程序里的字符串,没有发现什么铭感的地方,直接看ma ...

  10. javascript中的12种循环遍历方法

    1.for (自定义条件) 循环 let arr = [1,2,3]; for(let i =0;i<arr.length;i++){ console.log(i,arr[i]) } 2.for ...