IntelliJ IDEA 2020.1.1 x64 Debug 断点调试模式详解
前言
对于初入职场的萌新们来说,很多都还不会 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 断点调试模式详解的更多相关文章
- C# trace debug TraceListener调试信息详解
在C#编程中,可能要碰到把调试信息输出的问题,我们可以自己把信息显示在某个控件上,但是MS自己提供了一套机制帮助我们输出一些调试信息,这些信息有助于我们判断程序的走向,不用自己再去额外写调试代码了. ...
- (转)Intellij IDEA 2017 debug断点调试技巧与总结详解篇
背景:详细介绍idea的debug调试过程 Intellij IDEA 2017 debug断点调试技巧与总结详解篇
- debug断点调试
debug断点调试 1,虫子启动2,F6 执行断点的下一步,下一个语句 F5 进入方法 F8 执行到结束 查看表达式的值:选中查看的表达式,接着按 ctrl ...
- Intellij IDEA 2017 debug断点调试技巧与总结详解篇
转载自csdn----------------------------------------------------------------------https://blog.csdn.net/q ...
- Eclipse debug断点调试代码时出现source not found问题
偶尔调试代码的时候会出现这种事情,之前并没有特别注意,今天稍微搜集一下相关资料: 1.跳转到的代码的确没有源码,下载源码后选择源码位置后便会正常显示源码. 2.源码和class文件不一致.即便勾选了a ...
- myeclipse下对tomcat项目进行debug断点调试
对于eclipse或myeclipse调试J2SE项目或小应用进行断点调试,大家都不陌生,只要设置断点,debug运行就OK了.但是如果是web项目,而项目是在容器中运行的,比如tomcat,resi ...
- 解决Eclipse Debug 断点调试的source not found问题
写完代码进行调试的时候,经常会用到断点调试,一步步检测问题,但有时候eclipse有时候无法进入断点,这样就失去了断点的意义,原因是debug无法找到该项目的源代码,解决方法如下 1,打开debug ...
- 关于Eclipse Debug断点调试出现 Search not found 页面的解决办法
1. 在代码中鼠标右键 Debug AS ---> Debug Configurations... ----> 找到Source选项 ---> 点击add ---> 选择 j ...
- IDEA中 Debug 调试工具(图文详解)
DEBUG调试工具 一. Debug 调试工具 1. Debug的作用 2. Debug的使用步骤 3. IDEA中Debug按钮详解 总结 参考博文:https://blog.csdn.net/qq ...
随机推荐
- GO类型转换
golang []byte转string golang中,字符切片[]byte转换成string最简单的方式是 package main import ( "fmt" _ &quo ...
- 【C/C++】算法入门:排序/算法笔记
(设排序从小到大) 冒泡排序 这个大家都会,从第一个开始往后俩俩交换,然后第二个,最后到最后一个,复杂度n^2 选择排序 思路和冒泡差不多,比如要得到从小到大的排序,就是从第一个开始,i取1~n,每次 ...
- NGNIX 开启socket分发的使用配置
worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/err ...
- 【简】题解 AWSL090429 【原子】
预处理出每个原子最近的不能合并的位置 枚举当前位置和前面断开的位置合并 发现还是不能过 考虑用选段树优化 但是因为每次转移的最优点是在前面可以合并的范围内 dp值加上当前的到该点的最大值 因为每个位置 ...
- numpy基础教程--where函数的使用
在numpy中,where函数是一个三元运算符,函数原型为where(condition, x, y),意思是当条件成立的时候,将矩阵的值设置为x,否则设置为y 一个很简单的应用就是,在一个矩阵当中, ...
- Mysql配置文件 16c64g优化
目录 一.说明 二.配置 一.说明 以下配置适合16核64G及以上的配置,会让性能稍微提高1/3左右. 二.配置 my.cnf [client] port = 3306 socket = /usr/l ...
- Git忽略提交规则 .gitignore文件
在使用Git的过程中,我们喜欢有的文件比如日志,临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交.简单来说一个场景:在你使用git add .的时候,遇到 ...
- Nginx HTTP块配置
1 配置块的嵌套 http { upstream {...} split_clients {...} map {...} geo {...} server { if () {...} location ...
- ES 6 新特性笔记
let 与 var 的区别 功能 let var 块级作用域 ️ 变量提升 ️ 重复声明(相同作用域内) ️ var 没有块级作用域的解决方法 使用函数替代块级作用域,以保证变量的正常使用,如: .. ...
- 关于@Autowired和@Resource注解区别
区分一下@Autowired和@Resource两个注解的区别: 1.@Autowired默认按照byType方式进行bean匹配,@Resource默认按照byName方式进行bean匹配 2.@A ...