当前位置: 首页 > 科技观察

【方向盘】使用IDEA的60+快捷键分享给大家,都是为了提高效率(运行-调试)

时间:2023-03-13 01:52:58 科技观察

?前言本系列上一篇介绍了IDEA中窗口和选择的快捷键,你可以掌握他们熟练地可以快速找到并定位到你想要的代码。本文将继续IDEA的Run和Debug的快捷键。专栏【方向盘】——IntelliJIDEA。相关下载【本专栏源码】:https://github.com/yourbatman/FXP-java-ee。【技术专栏源码大本营】:https://github.com/yourbatman/tech-column-learning。【女娲刀-Initializr项目】访问地址:http://152.136.106.14:8761。【程序员网盘】公益上线,注册送1G超小容量,帮你练减法:https://wangpan.yourbatman.cn。【Java开发包(Mac)】:https://wangpan.yourbatman.cn/s/rEH0提取码:javakit。版本约定MacOS12.3。iTerm23.4.15(zsh5.8)。IntelliJIDEA2021.3.3。文本IntelliJIDEA快捷键Run/Debug处于运行模式,程序被执行,但不会暂停或检查执行。在调试模式下,程序会执行,但可以暂停和恢复执行,可以检查变量,也可以计算表达式。runruns运行(主要方法)。运行是一个笼统的概念,这里特指Java语言中的main方法(或者单元测试中的@Test)。这是很容易理解的操作。这里最重要的是搞清楚三个Run的区别:control+r:runningcontext中的当前entry,也叫上次运行的entry。也就是目前这里展示的入口:它的好处是可以直接在Project的任何地方运行这个入口来启动项目,非常非常的方便,也是笔者最常用的操作方式。毕竟一般来说,一个应用(无论是SpringBoot应用还是传统的war应用)只会有一个入口。control+shift+r:运行当前文件中的main方法。它的特点是:如果当前文件有一个main方法,它会自动找到并运行它,不管你的文件有多长;当然如果当前文件没有main方法,按这个快捷键是没有反应的。它的典型使用场景是:当你自己写main方法测试一些东西的时候,按快捷键运行会非常高效。值得注意的是,当你按下这个快捷键的时候,它也会在这里切换(如下图),所以如果此时你按下control+r,它就会执行“it”。control+option+r:不会执行操作,而是调出运行窗口,让你选择入口,如下图:说实话,我很少用到这个快捷键,毕竟在大多数情况下case,就是1-有2个入口,前两个快捷键就够用了,你需要什么就拿什么。Debug调试逻辑的含义与Run完全相同,这里不再过多解释。有一个小技巧:在Run/Debug窗口中选择条目时,按shift键在它们之间切换:Tips:debug也是一种运行状态。从状态上看,都属于运行类,都可以停止。Stop停止运行(进程)。比如:main方法进程、SQL连接、Http请求、SQL执行过程……当然在IDEA中用的最多的就是停止main方法进程,就是这个按钮:值得注意的是如果有多个线程当前它正在运行,那么当你按下这个快捷键时,会弹出一个窗口,由你来决定(效果与点击鼠标右上角的停止按钮相同):调试快捷键正所谓三分开发,七分调试,所以掌握调试常用的调试快捷键也是很有用的。常用按钮位置分布如图:对了,之前发过一篇“很厉害”的调试技巧,可以结合这篇文章参考,效果更好:最好的IDEA调试长文?念佛后。StepOver单步执行,单步调试。是最常用的调试快捷键,没有之一。它的特点是:遇到子函数时,不会进入子函数,而是在执行完整个子函数后停止,即把整个子函数看成一步。StepInto也称为单步执行、单步调试。与StepOver的区别在于:遇到子函数时,会进入子函数。StepOut当进入子函数时,使用该函数一次执行子函数的其余部分并返回到上一个函数(停止)。ForceStepInto,顾名思义:强制进入。ForceStepInto和StepInto的区别是:前者可以进入任意方法,后者只能进入自定义方法或第三方库方法,官方库(如JDK库)不能进入。无法使用StepInto输入以下toString()方法。如果要进入,只能使用ForceStepInto。说实话大部分情况下StepInto就够用了,ForceStepInto其实用的比较少。ForceStepOver使用StepOver时,如果函数内部有断点,就会停止。而如果使用ForceStepOver,则不管这个函数中是否有断点,都跳过它,直接执行到下一行。Tips:由于该功能不常用,调试面板中没有按钮,需要时使用快捷键触发。笔者很喜欢RuntoCursor这个快捷键,非常非常方便。函数的意思就是字面意思:程序在光标所在位置执行并暂停。绑定了两个快捷键,我习惯用后者:用Mac的forcetouch简直不要太香,所见即所得,体验完美。什么是力触?点击前往。Evaluate调试过程中,窗口中可以直接看到代码中的变量值,但有些是看不到的,比如:中间变量和表达式计算值。这个时候,我们就不得不牺牲这个神器:EvaluateExpression。有一定开发经验的朋友肯定用过这个功能。既然这么常用,那以后能不能用快捷键来提高效率呢?哦,对了,当你在输入框里写了一条语句,想要执行的时候,不需要用鼠标点击右下角的Evaluate按钮,然后按common+enter就可以执行了(效果是与单击右下角的“评估”按钮相同)。解释:common+enter是Mac中常用的快捷键组合,在很多场景下表示运行、执行、确认。QuickEvaluate快速执行表达式(光标选中),像这样:说实话,这个快捷键在实际工作中比