IDEA2022快速上手开发利器

  • 一、详细设置
  • 1.1 如何打开详细配置界面
  • 1.2 系统设置
  • 1.3 设置整体主题
  • 1.4 设置编辑器主题样式
  • 1.5 显示行号与方法分隔符
  • 1.6 代码智能提示功能
  • 1.7 自动导包配置
  • 1.8 设置项目文件编码(一定要改)
  • 1.9 设置控制台的字符编码
  • 1.10 修改类头的文档注释信息
  • 1.11 设置自动编译
  • 1.12 设置为省电模式 (可忽略)
  • 1.13 取消双击shift搜索
  • 1.14 其它设置
  • 二、工程与模块管理
  • 2.1、IDEA项目结构
  • 2.2 Project和Module的概念
  • 2.3 创建Module
  • 2.4 删除模块
  • 2.5 导入老师的模块
  • 2.6 同时打开两个IDEA项目工程
  • 2.7 导入前几章非IDEA工程代码
  • 三、代码模板的使用
  • 3.1 查看Postfix Completion模板(后缀补全)
  • 3.2 查看Live Templates模板(实时模板)
  • 3.3 常用代码模板
  • 3.4 自定义代码模板
  • 四、快捷键的使用
  • 4.1、已知快捷键操作名,未知快捷键
  • 4.2、已知快捷键,不知道对应的操作名
  • 4.3、自定义快捷键
  • 4.4、使用其它平台快捷键
  • 4.5、常用快捷键一览表
  • 五、IDEA断点调试(Debug)
  • 5.1、为什么需要Debug
  • 5.2、Debug的步骤
  • 5.3、多种Debug情况介绍
  • 1、行断点
  • 2、字段断点
  • 3、条件断点
  • 4、异常断点
  • 5、线程调试
  • 6、强制结束
  • 7、自定义调试数据视图
  • 8、常见问题
  • 5.4、IDEA常用插件
  • 推荐1:Alibaba Java Coding Guidelines
  • 推荐2:jclasslib bytecode viewer
  • 推荐3:Translation
  • 推荐4:GenerateAllSetter
  • 插件5:Rainbow Brackets
  • 推荐6:CodeGlance Pro
  • 推荐7:Statistic
  • 推荐8:Presentation Assistant
  • 推荐9:Key Promoter X
  • 推荐10:JavaDoc
  • 推荐11: LeetCode Editor
  • 推荐12:GsonFormatPlus
  • 插件13:Material Theme UI

一、详细设置

1.1 如何打开详细配置界面

1、显示工具栏

IDEA2022快速上手开发利器_ide

2、选择详细配置菜单或按钮

IDEA2022快速上手开发利器_ide_02


IDEA2022快速上手开发利器_自定义_03

1.2 系统设置

1、默认启动项目配置

IDEA2022快速上手开发利器_快捷键_04

启动IDEA时,默认自动打开上次开发的项目?还是自己选择?
如果去掉Reopen last project on startup前面的对勾,每次启动IDEA就会出现如下界面:

IDEA2022快速上手开发利器_快捷键_05

2、取消自动更新

Settings–>Appearance & Behavior->System Settings -> Updates

IDEA2022快速上手开发利器_快捷键_06

默认都打√了,建议检查IDE更新的√去掉,检查插件更新的√选上。

1.3 设置整体主题

1、选择主题

IDEA2022快速上手开发利器_自定义_07


2、设置菜单和窗口字体和大小

IDEA2022快速上手开发利器_快捷键_08

3、设置IDEA背景图

IDEA2022快速上手开发利器_ide_09

选择一张合适的图片作为背景,即可。

IDEA2022快速上手开发利器_ide_10

1.4 设置编辑器主题样式

1、编辑器主题

IDEA2022快速上手开发利器_快捷键_11

2、字体大小

IDEA2022快速上手开发利器_自定义_12

更详细的字体与颜色如下:

IDEA2022快速上手开发利器_自定义_13

3、注释的字体颜色

IDEA2022快速上手开发利器_intellij-idea_14

  • Block comment:修改多行注释的字体颜色
  • Doc Comment –> Text:修改文档注释的字体颜色
  • Line comment:修改单行注释的字体颜色

1.5 显示行号与方法分隔符

IDEA2022快速上手开发利器_自定义_15

1.6 代码智能提示功能

IDEA2022快速上手开发利器_ide_16


IntelliJ IDEA 的代码提示和补充功能有一个特性: ​​区分大小写​​​ 。 如果想不区分大小写的话,就把这个对勾去掉。 ​​建议去掉勾选​​ 。

1.7 自动导包配置

默认需要自己手动导包,Alt+Enter快捷键

IDEA2022快速上手开发利器_ide_17

自动导包设置

  • 动态导入明确的包:Add unambiguous imports on the fly,该设置具有全局性;
  • 优化动态导入的包:Optimize imports on the fly,该设置只对当前项目有效;

IDEA2022快速上手开发利器_ide_18

1.8 设置项目文件编码(一定要改)

IDEA2022快速上手开发利器_ide_19

说明: Transparent native-to-ascii conversion主要用于转换ascii,显式原生内容。一般都要勾选。

1.9 设置控制台的字符编码

IDEA2022快速上手开发利器_快捷键_20

1.10 修改类头的文档注释信息

IDEA2022快速上手开发利器_ide_21

比如:常用的预设的变量,这里直接贴出官网给的:

/**
* ClassName: ${NAME}
* Package: ${PACKAGE_NAME}
* Description:
* @Author 尚硅谷-宋红康
* @Create ${DATE} ${TIME}
* @Version 1.0
*/

1.11 设置自动编译

IDEA2022快速上手开发利器_intellij-idea_22

1.12 设置为省电模式 (可忽略)

IDEA2022快速上手开发利器_intellij-idea_23

IntelliJ IDEA 有一种叫做 ​​省电模式​​​ 的状态,开启这种模式之后 IntelliJ IDEA 会 ​​关掉代码检查 和 代码提示​​​ 等功能。所以一般也可认为这是一种 ​​阅读模式​​ ,如果你在开发过程中遇到突然代码文件不能进行检查和提示,可以来看看这里是否有开启该功能。

1.13 取消双击shift搜索

因为我们按shift切换中英文输入方式,经常被按到,总是弹出搜索框,太麻烦了。可以取消它。

IDEA2022快速上手开发利器_ide_24

方式1:适用于IDEA 2022.1.2版本
在2022.1版本中,采用如下方式消双击shift出现搜索框:搜索double即可,勾选Disable double modifier
key shortcuts,禁用这个选项。

IDEA2022快速上手开发利器_自定义_25

方式2:适用于IDEA 2022.1.2之前版本
双击shift 或 ctrl + shift + a,打开如下搜索窗口:

IDEA2022快速上手开发利器_intellij-idea_26

选择registry…,找到"ide.suppress.double.click.handler",把复选框打上勾就可以取消双击shift出现搜索框了。

IDEA2022快速上手开发利器_intellij-idea_27

1.14 其它设置

是否在单行显式编辑器选项卡(建议去掉勾选)

IDEA2022快速上手开发利器_ide_28


设置代码样式:比如,设置import显示"*"时的个数

IDEA2022快速上手开发利器_自定义_29

二、工程与模块管理

2.1、IDEA项目结构

层级关系:

project(工程) - module(模块) - package(包) - class(类)

具体的:

一个project中可以创建多个module
一个module中可以创建多个package
一个package中可以创建多个class
这些结构的划分,是为了方便管理功能代码。

2.2 Project和Module的概念

在 IntelliJ IDEA 中,提出了Project和Module这两个概念。

IDEA2022快速上手开发利器_自定义_30

在 IntelliJ IDEA 中Project是 最顶级的结构单元 ,然后就是Module。目前,主流的大型项目结构基本都是 多Module的结构,这类项目一般是 按功能划分 的,比如:user-core-module、user-facade-module和user- hessian-module等等,模块之间彼此可以 相互依赖 ,有着不可分割的业务关系。因此,对于一个Project 来说:

  • 当为单Module项目的时候,这个单独的Module实际上就是一个Project。
  • 当为多Module项目的时候,多个模块处于同一个Project之中,此时彼此之间具有 互相依赖 的关联关系。
  • 当然多个模块没有建立依赖关系的话,也可以作为单独一个“小项目”运行。

2.3 创建Module

建议创建“Empty空工程”,然后创建多模块,每一个模块可以独立运行,相当于一个小项目。JavaSE阶段 不涉及到模块之间的依赖。后期再学习模块之间的依赖。

步骤:
(1) 选择创建模块

IDEA2022快速上手开发利器_intellij-idea_31

(2) 选择模块类型:这里选择创建Java模块,给模块命名,确定存放位置

IDEA2022快速上手开发利器_intellij-idea_32


(3)模块声明在工程下面

IDEA2022快速上手开发利器_ide_33

2.4 删除模块

(1) 移除模块

IDEA2022快速上手开发利器_快捷键_34

(2) 彻底删除模块

IDEA2022快速上手开发利器_快捷键_35

2.5 导入老师的模块

(1) 将老师的模块 teacher_chapter04 整个的复制到自己IDEA项目的路径下

IDEA2022快速上手开发利器_intellij-idea_36

接着打开自己IDEA的项目,会在项目目录下看到拷贝过来的module,只不过不是以模块的方式呈现。

IDEA2022快速上手开发利器_自定义_37

(2) 查看Project Structure,选择import module

IDEA2022快速上手开发利器_快捷键_38


IDEA2022快速上手开发利器_ide_39

(3) 选择要导入的module:

IDEA2022快速上手开发利器_快捷键_40


IDEA2022快速上手开发利器_快捷键_41

(4) 接着可以一路Next下去,最后选择Overwrite

IDEA2022快速上手开发利器_自定义_42


IDEA2022快速上手开发利器_ide_43


最后点击OK即可了。

2.6 同时打开两个IDEA项目工程

1、两个IDEA项目工程效果

有些同学想要把上课练习代码和作业代码分开两个IDEA项目工程。

IDEA2022快速上手开发利器_intellij-idea_44


IDEA2022快速上手开发利器_intellij-idea_45

2、新建一个IDEA项目

注意:第一次需要新建,之后直接打开项目工程即可

IDEA2022快速上手开发利器_intellij-idea_46


IDEA2022快速上手开发利器_自定义_47

IDEA2022快速上手开发利器_快捷键_48

3、打开两个IDEA项目

IDEA2022快速上手开发利器_intellij-idea_49


IDEA2022快速上手开发利器_ide_50


IDEA2022快速上手开发利器_自定义_51

2.7 导入前几章非IDEA工程代码

1、创建chapter01、chapter02、chapter03等章节的module

将相应章节的源文件粘贴到module的src下。

IDEA2022快速上手开发利器_intellij-idea_52


IDEA2022快速上手开发利器_intellij-idea_53

打开其中各个源文件,会发现有乱码。比如:

IDEA2022快速上手开发利器_ide_54

2、设置编码

当前项目是UTF-8。如果原来的.java文件都是GBK的(如果原来.java文件有的是GBK,有的是UTF-8就比较 麻烦了)。
可以单独把这两个模块设置为GBK编码的。

IDEA2022快速上手开发利器_自定义_55

改为GBK,确认即可。如图:

IDEA2022快速上手开发利器_自定义_56

三、代码模板的使用

3.1 查看Postfix Completion模板(后缀补全)

IDEA2022快速上手开发利器_自定义_57

3.2 查看Live Templates模板(实时模板)

IDEA2022快速上手开发利器_自定义_58

3.3 常用代码模板

1、非空判断

变量.null:if(变量== null)
变量.nn:if(变量!= null)
变量.notnull:if(变量!= null) ifn:if(xx == null)
inn:if(xx != null)

2、遍历数组和集合

数组或集合变量.fori:for循环
数组或集合变量.for:增强for循环数组或集合变量.forr:反向for循环
数组或集合变量.iter:增强for循环遍历数组或集合

3、输出语句

sout: 相 当 于 System.out.println             
soutm: 打 印 当 前 方 法 的 名 称
soutp:打印当前方法的形参及形参对应的实参值
soutv:打印方法中声明的最近的变量的值
变量.sout:打印当前变量值
变量.soutv:打印当前变量名及变量值

4、对象操作

创建对象

  • Xxx.new .var :创建Xxx类的对象,并赋给相应的变量
  • Xxx.new .field:会将方法内刚创建的Xxx对象抽取为一个属性

强转

  • 对象.cast:将对象进行强转 对象.
  • castvar:将对象强转后,并赋给一个变量

5、静态常量声明

  • psf:public static final
  • psfi:public static final int
  • psfs:public static final String
  • prsf:private static final

3.4 自定义代码模板

1、 自定义后缀补全模板

IDEA2022快速上手开发利器_自定义_59


IDEA2022快速上手开发利器_自定义_60

2、 自定义Live Templates
例如:定义sop代表System.out.print();语句
①在Live Templates中增加模板

IDEA2022快速上手开发利器_intellij-idea_61

②先定义一个模板的组,这样方便管理所有自定义的代码模板

IDEA2022快速上手开发利器_ide_62

③在模板组里新建模板

IDEA2022快速上手开发利器_快捷键_63

④定义模板(以输出语句为例)

IDEA2022快速上手开发利器_自定义_64

  • Abbreviation:模板的缩略名称
  • Description:模板的描述
  • Template text:模板的代码片段
  • 模板应用范围。比如点击Define。选择如下:应用在java代码中。

IDEA2022快速上手开发利器_快捷键_65

其它模板1:单元测试模板:

IDEA2022快速上手开发利器_intellij-idea_66

其它模板2:创建多线程

IDEA2022快速上手开发利器_ide_67

其它模板3:冒泡排序

IDEA2022快速上手开发利器_intellij-idea_68

四、快捷键的使用

4.1、已知快捷键操作名,未知快捷键

IDEA2022快速上手开发利器_ide_69

4.2、已知快捷键,不知道对应的操作名

IDEA2022快速上手开发利器_快捷键_70

4.3、自定义快捷键

IDEA2022快速上手开发利器_快捷键_71

4.4、使用其它平台快捷键

苹果电脑或者是用惯Eclipse快捷的,可以选择其他快捷键插件。

IDEA2022快速上手开发利器_自定义_72

4.5、常用快捷键一览表

第1组:通用型

IDEA2022快速上手开发利器_ide_73


第2组:提高编写速度(上)

IDEA2022快速上手开发利器_快捷键_74


第3组:提高编写速度(下)

IDEA2022快速上手开发利器_自定义_75


第4组:类结构、查找和查看源码

IDEA2022快速上手开发利器_ide_76


第5组:查找、替换与关闭

IDEA2022快速上手开发利器_快捷键_77

第6组:调整格式

IDEA2022快速上手开发利器_intellij-idea_78


Debug快捷键

IDEA2022快速上手开发利器_ide_79

五、IDEA断点调试(Debug)

5.1、为什么需要Debug

编好的程序在执行过程中如果出现错误,该如何查找或定位错误呢?简单的代码直接就可以看出来,但 如果代码比较复杂,就需要借助程序调试来查找错误了。

运行编写好的程序时,可能出现的几种情况:
> 情况1:没有任何bug,程序执行正确!
>
====================如果出现如下的三种情况,都又必要使用debug=============================
> 情况2:运行以后,出现了错误或异常信息。但是通过日志文件或控制台,显示了异常信息的位置。
> 情况3:运行以后,得到了结果,但是结果不是我们想要的。
> 情况4:运行以后,得到了结果,结果大概率是我们想要的。但是多次运行的话,可能会出现不是我们想要的情况。 比如:多线程情况下,处理线程安全问题。

5.2、Debug的步骤

Debug(调试)程序步骤如下:
1、添加断点
2、启动调试
3、单步执行
4、观察变量和执行流程,找到并解决问题

1、添加断点

在源代码文件中,在想要设置断点的代码行的前面的标记行处,单击鼠标左键就可以设置断点,在相同 位置再次单击即可取消断点。

IDEA2022快速上手开发利器_快捷键_80

2、启动调试

IDEA提供多种方式来启动程序(Launch)的调试,分别是通过菜单(Run –> Debug)、图标(“绿色臭虫”

IDEA2022快速上手开发利器_快捷键_81

等等

IDEA2022快速上手开发利器_快捷键_82

3、单步调试工具介绍

IDEA2022快速上手开发利器_intellij-idea_83

IDEA2022快速上手开发利器_自定义_84

IDEA2022快速上手开发利器_intellij-idea_85

:Step Over(F8):进入下一步,如果当前行断点是调用一个方法,则不进入当前方法体内

IDEA2022快速上手开发利器_ide_86

:Step Into(F7):进入下一步,如果当前行断点是调用一个自定义方法,则进入该方法体内

IDEA2022快速上手开发利器_ide_87

:Force Step Into(Alt +Shift + F7):进入下一步,如果当前行断点是调用一个核心类库方法,则进入该方法体内

IDEA2022快速上手开发利器_快捷键_88

:Step Out(Shift + F8):跳出当前方法体

IDEA2022快速上手开发利器_intellij-idea_89

:Run to Cursor(Alt + F9):直接跳到光标处继续调试

IDEA2022快速上手开发利器_快捷键_90

:Resume Program(F9):恢复程序运行,但如果该断点下面代码还有断点则停在下一个断点上

IDEA2022快速上手开发利器_ide_91

:Stop(Ctrl + F2):结束调试

IDEA2022快速上手开发利器_快捷键_92

:View Breakpoints(Ctrl + Shift + F8):查看所有断点

IDEA2022快速上手开发利器_intellij-idea_93

:Mute Breakpoints:使得当前代码后面所有的断点失效, 一下执行到底

5.3、多种Debug情况介绍

1、行断点

断点打在代码所在的行上。执行到此行时,会停下来。

断点设置在方法的签名上,默认当进入时,断点可以被唤醒。也可以设置在方法退出时,断点也被唤醒

IDEA2022快速上手开发利器_ide_94

2、字段断点

在类的属性声明上打断点,默认对属性的修改操作进行监控

IDEA2022快速上手开发利器_自定义_95

3、条件断点

IDEA2022快速上手开发利器_快捷键_96

4、异常断点

IDEA2022快速上手开发利器_自定义_97

5、线程调试

IDEA2022快速上手开发利器_intellij-idea_98

6、强制结束

IDEA2022快速上手开发利器_自定义_99

7、自定义调试数据视图

IDEA2022快速上手开发利器_ide_100


IDEA2022快速上手开发利器_快捷键_101

8、常见问题

问题:使用Step Into时,会出现无法进入源码的情况。如何解决? 
方案1:使用 force step into 即可
方案2:点击Setting -> Build,Execution,Deployment -> Debugger -> Stepping
把Do not step into the classess中的 java.* 、 取消勾选即可。

IDEA2022快速上手开发利器_ide_102

5.4、IDEA常用插件

推荐1:Alibaba Java Coding Guidelines

IDEA2022快速上手开发利器_快捷键_103

阿里巴巴Java编码规范检查插件,检测代码是否存在问题,以及是否符合规范。
使用:在类中,右键,选择编码规约扫描,在下方显示扫描规约和提示。根据提示规范代码,提高代码 质量。

推荐2:jclasslib bytecode viewer

IDEA2022快速上手开发利器_自定义_104

可视化的字节码查看器。使用:
1. 在IDEA 打开想研究的类。
2. 编译该类或者直接编译整个项目( 如果想研究的类在jar 包中,此步可略过)。
3. 打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项。
4. 选择上述菜单项后IDEA 中会弹出jclasslib 工具窗口。

IDEA2022快速上手开发利器_自定义_105

推荐3:Translation

注册翻译服务(有道智云、百度翻译开放平台、阿里云机器翻译)帐号,开通翻译服务并获取其应用ID  和密钥绑定应用ID和密钥:偏好设置(设置) > 工具 > 翻译 > 常规 > 翻译引擎 > 配置…
使用:鼠标选中文本,点击右键即可自动翻译成多国语言。注:请注意保管好你的应用密钥,防止其泄露。

推荐4:GenerateAllSetter

实际开发中还有一个非常常见的场景: 我们创建一个对象后,想依次调用  Setter 函数对属性赋值,如果属性较多很容易遗漏或者重复。

IDEA2022快速上手开发利器_intellij-idea_106


可以使用这 GenerateAllSetter 提供的功能,快速生成对象的所有 Setter 函数(可填充默认值),然后自己再跟进实际需求设置属性值。

插件5:Rainbow Brackets

IDEA2022快速上手开发利器_ide_107

给括号添加彩虹色,使开发者通过颜色区分括号嵌套层级,便于阅读

IDEA2022快速上手开发利器_ide_108

推荐6:CodeGlance Pro

IDEA2022快速上手开发利器_快捷键_109


在编辑器右侧生成代码小地图,可以拖拽小地图光标快速定位代码,阅读行数很多的代码文件时非常实 用。

IDEA2022快速上手开发利器_自定义_110

推荐7:Statistic

IDEA2022快速上手开发利器_自定义_111


代码统计工具

IDEA2022快速上手开发利器_intellij-idea_112


IDEA2022快速上手开发利器_快捷键_113

推荐8:Presentation Assistant

IDEA2022快速上手开发利器_快捷键_114

显示快捷键操作的按键

推荐9:Key Promoter X

IDEA2022快速上手开发利器_快捷键_115


快捷键提示插件。当你执行鼠标操作时,如果该操作可被快捷键代替,会给出提示,帮助你自然形成使 用快捷键的习惯,告别死记硬背。

推荐10:JavaDoc

IDEA2022快速上手开发利器_ide_116


按 alt+insert ,执行操作

IDEA2022快速上手开发利器_自定义_117

推荐11: LeetCode Editor

IDEA2022快速上手开发利器_intellij-idea_118

IDEA2022快速上手开发利器_快捷键_119


在 IDEA 里刷力扣算法题

推荐12:GsonFormatPlus

IDEA2022快速上手开发利器_自定义_120

根据 json 生成对象。
使用:使用alt + s 或 alt + insert调取。

IDEA2022快速上手开发利器_ide_121

插件13:Material Theme UI

IDEA2022快速上手开发利器_intellij-idea_122

对于很多人而言,写代码时略显枯燥的,如果能够安装自己喜欢的主题将为开发工作带来些许乐趣。
IDEA 支持各种主题插件,其中最出名的当属 Material Theme UI。

IDEA2022快速上手开发利器_intellij-idea_123


安装后,可以从该插件内置的各种风格个选择自己最喜欢的一种。