IDEA知识点总结
一、写在前面
IDEA是一款非常好用的Java开发工具,关于安装和永久使用,各位读者自己去网上搜索即可(支持正版)。本次重点关注的是IDEA的一些常用配置和提高开发的一些插件和快捷键介绍。
二、常用配置
打开IDEA后,点击左上角的File→Settings,大部分的IDEA设置都在该菜单下。
打开settings后,可以看到以下的目录,下面将依次为大家介绍
2.1 Appearance & Behavior
2.1.1设置主题
IDEA提供了三种默认主题,分别是IntelliJ, Darcula, Windows 。我本人比较喜欢Darcula主题,暗黑风配上后面的介绍的彩虹插件,很有感觉。
2.1.2.通过插件(plugins)更换主题
如果读者觉得默认的三种idea主题不能满足需求,Material Theme UI这款暗黑主题插件可以尝试一下。
找到Plugins菜单,见名知意,该菜单是用来安装IDEA插件的地方,按照上面顺序,即可搜索到Material Theme UI插件,然后点击INSTALLED,重启IDEA即可安装成功。
当然,也不是一锤子买卖,不过不喜欢该插件,也可以卸载。按照下图顺序即可,点击进入该主题,选择UNINSTALL即可。
2.2 Editor - General
2.2.1设置鼠标悬浮提示
2.2.2.设置自动导包功能
Add unambiguous imports on the fly:自动导入不明确的结构
Optimize imports on the fly: 自动帮我们优化导入的包
2.2.3.设置显示行号和方法间的分隔符
Show line numbers:显示行数
Show method separators :显示方法分隔线
2.2.4.忽略大小写提示
IDEA的代码提示和补充功能都是区分大小写的,这时,如果我输入了stringBuffer,这时候IDEA是不会给我们相关提示和代码补充的,输入StringBuffer是有的。如果我们按照下图设置IDEA忽略大小写。则stringBuffer也可以了。
2.2.5.设置取消单行显示 tabs 的操作
打开很多文件的时候, IntelliJ IDEA 默认是把所有打开的文件名 Tab 单行显示的。但是我个人现在的习惯是使用多行,多行效率比单行高,因为单行会隐藏超过界面部分 Tab,这样找文件不方便 。
2.3 Editor – Font
2.3.1设置默认的字体、字体大小、字体行间距
2.4 Editor – File and Code Templates
2.4.1修改类头的文档注释信息
/**
* @author 自己名字
* @create ${YEAR}-${MONTH}-${DAY}-${TIME}
*/
2.5 Editor – File Encodings
2.5.1.设置项目文件编码
Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选,不然 Properties 文件中的注释显示的都不会是中文 。
2.5.2.设置自动编译
Intellij Idea 默认状态为不自动编译状态, Eclipse 默认为自动编译:很多朋友都是从 Eclipse 转到 Intellij 的,这常常导致我们在需要操作 class 文件时忘记对修改后的 java 类文件进行重新编译, 从而对旧文件进行了操作。
三、常用快捷键
- 编辑
- Ctrl + Shift + Space:智能补全
- Ctrl + mouse:进到某个类或者方法源代码中进行查看
- Alt + Insert:自动生成某个类的 Getters, Setters, Constructors, hashCode/equals, toString 等代码
- Ctrl + Alt + T:自动生成具有环绕性质的代码,比如:if…else,try…catch, for, synchronized 等等,使用前要先选择好需要环绕的代码块
- Ctrl + /:对单行代码,添加或删除注释。分为两种情况:如果只是光标停留在某行,那么连续使用该快捷键,会不断注释掉下一行的代码;如果选定了某行代码(选定了某行代码一部分也算这种情况),那么连续使用该快捷键,会在添加或删除该行注释之间来回切换。(常用)
- Ctrl + Shift + /:对代码块,添加或删除注释。它与 Ctrl + / 的区别是,它只会在代码块的开头与结尾添加注释符号!
- Ctrl + W:选中当前光标所在的代码块,多次触发,代码块会逐级变大
- Ctrl + Shift + W:是 Ctrl + W 的反向操作,多次触发,代码块会逐级变小,最小变为光标
- Alt + Enter:展示当前当前光标所在代码,可以变化的扩展操作
- Ctrl + Alt + L:格式化代码
- Ctrl + Alt + O:去除没有实际用到的包,这在 java 类中特别有用
- Ctrl + Alt + I:按照缩进的设定,自动缩进所选择的代码段
- Tab / Shift + Tab:缩进或者不缩进一次所选择的代码段
- Ctrl + X 或 Shift Delete:剪切当前代码
- Ctrl + C 或 Ctrl + Insert:拷贝当前代码
- Ctrl + Shift + V:从之前的剪切或拷贝的代码历史记录中,选择现在需要粘贴的内容
- Ctrl + D:复制当前选中的代码
- Ctrl + Y:删除当前光标所在的代码行
- Ctrl + Enter:当前代码行与下一行代码之间插入一个空行,原来所在的光标不变
- Shift + Enter:当前代码行与下一行代码之间插入一个空行,原来光标现在处于新加的空上
- Ctrl + Shift + U:所选择的内容进行大小写转换
- Ctrl + Shift + ]/[:从当前光标所在位置开始,一直选择到当前光标所在代码段起始或者结束位置
- Ctrl + P:在某个方法中,调用该按键后,会展示出这个方法的调用参数列表信息
- Ctrl + O:展示该类中所有覆盖或者实现的方法列表,注意这里是字母小写的 O!
- 查找和替换
- Ctrl + F:在当前标签页中进行查找,还支持正则表达式
- F3:如果找到了多个查找结果,每调用一次就会跳到下一个结果,很方便哦
- Shift + F3:是 F3 的反向操作,即每调用一次就会跳到上一个结果
- Ctrl + R:在当前标签页中进行替换操作
- Ctrl + Shift + F:通过路径查找
- Ctrl + Shift + R:通过路径替换
- 查看使用情况
- Ctrl + Alt + F7:打开使用情况列表
- 编译与运行:
- Ctrl + F9:编译项目(如果之前有编译过,那么只会编译那些修改的类或者依赖的包)
- Alt + Shift + F10:会打开一个已经配置的运行列表,让你选择一个后,再运行
- Shift + F10:立即运行当前配置的运行实例,这个在单元测试中特别好用
- Shift + F9:立即以编译模式运行当前配置的运行实例
- 调试
- F8:跳到当前代码下一行
- F7:跳入到调用的方法内部代码
- Shift + F7:会打开一个面板,让你选择具体要跳入的类方法,这个在复杂的嵌套代码中特别有用
- Shift + F8:跳出当前的类,到上一级
- Alt + F9:让代码运行到当前光标所在处,非常棒的功能
- Alt + F8:打开一个表达式面板,然后进行进一步的计算
- F9:结束当前断点的本轮调试(因为有可能代码会被调用多次,所以调用后只会结束当前的这一次);如果有下一个断点会跳到下一个断点中
- Ctrl + Shift + F8:打开当前断点的面板,可以进行条件过滤
- 导航
- Ctrl + N:打开类查询框
- Ctrl + Shift + N:打开文件查询框
- Ctrl + G :跳转至某一行代码
- Ctrl + Alt + 右箭头/左箭头:在曾经浏览过的代码行中来回跳
- Alt + F1:打开一个类型列表,选择后会导航到当前文件或者内容的具体与类型相关的面板中
- Ctrl + B 或 Ctrl + 鼠标左键:如果是类,那么会跳转到当前光标所在的类定义或者接口;如果是变量,会打开一个变量被引用的列表
- Ctrl + Alt + B:跳转到实现类,而不是接口
- Ctrl + F12:打开类的结构列表
- Ctrl + H:打开类的继承关系列表
- Ctrl + Alt + H:打开所有类的方法列表,这些方法都调用了当前光标所处的某个类方法
- Ctrl + F11:把光标所处的代码行添加为带快捷键的书签或者从快捷键书签中删除
- Ctrl + [0-9]:跳转到之前定义的快捷键书签
- Shift + F11:打开书签列表
四、常用的实时代码模板(系统自带)
pvsm:可生成 main 方法
sout :System.out.println() 快捷输出
“abc”.sout => System.out.println(“abc”)
fori : 可生成 for 循环
iter:可生成增强 for 循环
itar:可生成普通 for 循环
list.for : 可生成集合 list 的 for 循环
ifn:可生成 if(xxx = null)
prsf:可生成 private static final
psf:可生成 public static final
psfi:可生成 public static final int
psfs:可生成 public static final String
五、版本控制(GIT)
六、Maven配置
6.1.maven的配置
七、断点调试
7.1.debug设置
设置 Debug 连接方式,默认是 Socket。 Shared memory 是 Windows 特有的一个属性,一般在 Windows 系统下建议使用此设置, 内存占用相对较少 。
Import Maven projects automatically:表示 IntelliJ IDEA 会实时监控项目的 pom.xml 文件,进行项目变动设置。
7.2.debug常用的快捷键
7.3.条件断点调试
说明:调试的时候,在循环里增加条件判断,可以极大的提高效率
具体操作:在断点处右击调出条件断点。可以在满足某个条件下,实施断点
查看表达式的值(ALT + F8) :
选择行,ALT + F8。还可以在查看框中输入编写代码时的其他方法
-
鼠标左键在要断点的行号点击一下,打个断点
-
鼠标移动到断点处,然后点击一下鼠标右键,之后会弹出
-
填写条件,可以使用该行中的代码对应的变量作为条件
-
点击Done按钮
八、其他设置
每一次开启新的项目,都需要重新配置一下编码、maven地址等这些固定化的配置,很是麻烦。通过下面的菜单,可以一次性设置。
8.1.设置maven
8.2.编码格式
8.3.项目Java使用版本
8.4.VM参数设置
16G运行内存建议参数
- #IDEA启动时内存,好比是一间房的大门,门越大,进来的人越多。
- -Xms4096m
- #IDEA运行时最大内存。值越大,垃圾回收频率越低,卡顿次数越少。
- -Xmx4096m
- #保留代码占用的内存容量
- -XX:ReservedCodeCacheSize=1024m
- #下面的我也不是太懂了,照着配置就行
- -XX:+UseConcMarkSweepGC
- -XX:SoftRefLRUPolicyMSPerMB=50
- -ea
- -Dsun.io.useCanonCaches=false
- -Djava.net.preferIPv4Stack=true
- -Djdk.http.auth.tunneling.disabledSchemes=""
- -XX:+HeapDumpOnOutOfMemoryError
存容量 - -XX:ReservedCodeCacheSize=1024m
- #下面的我也不是太懂了,照着配置就行
- -XX:+UseConcMarkSweepGC
- -XX:SoftRefLRUPolicyMSPerMB=50
- -ea
- -Dsun.io.useCanonCaches=false
- -Djava.net.preferIPv4Stack=true
- -Djdk.http.auth.tunneling.disabledSchemes=""
- -XX:+HeapDumpOnOutOfMemoryError
- -XX:-OmitStackTraceInFastThrow