Day22 | IDEA使用教程

137 阅读11分钟

工欲善其事必先利其器,对于Java开发来说,IDEA就是我们的利器之一。

今天我们一起来熟悉一下这个开发利器,不管是Java学习还是开发,熟练的掌握IDEA的使用,都是必要的。

一、下载安装

直接去官网下载:下载 IntelliJ IDEA

如果你去百度了IDEA,小心掉到了坑里,排在前面的全是广告或者盗版软件。

官网上,有两个版本:

Ultimate版和Community版,Ultimate版只有30天的试用期,试用期过后,是需要付费的。

Community版则是开源免费的。

对于还处于学习阶段的,可以直接Community版的,完全够用了(不分开发人员其实也是用的这个版本)。

对于某些特定的群体,比如学生、教师等,同样可以申请免费版的。

你可以去IntelliJ IDEA Ultimate特殊类别看看,自己是不是属于某些类别。

下载对应操作系统版本的可执行文件后,直接安装即可。

虽然IntelliJ IDEA是Java和Kotlin开发构建的,但是安装和运行不需要本地的Java运行时环境,也就是不需要你预先在本地安装 Java 运行时环境 (JRE)。它自身绑定的JetBrains Runtime (JBR),是专门用来运行 IntelliJ IDEA IDE本身的。 如果你要在IntelliJ IDEA里面开发Java的应用程序,就需要安装一个独立的Java Development Kit (JDK)。

二、使用

1、欢迎界面

安装完成,直接打开IDEA,进入欢迎界面。

第一次进入欢迎界面,项目菜单应该是干净的,没有任何项目。

后续创建或者导入项目后,欢迎界面会列出所有的项目。

要打开某个项目,直接单击项目名称即可。

2、创建项目

这里我们直接使用"New Project"新建一个项目:

接下来填写项目信息:

左侧选中Java(默认)。

右侧"Name:"表示该项目的名称。

"Location:"表示项目所在路径。

"Build system:"表示构建系统的选择,当前直接选择"Intellij",Maven和Gradle后续会专门写文章讲解。

"JDK:"表示使用的JDK版本。

有两种形式可以注册JDK(让IDEA识别到):

"Download JDK..."是在线下载,可以直接下载列出的合适版本。

"Add JDK from Disk..."用于你已经在本地开发环境下载了JDK,只需要通过这种方式告诉IDEA,JDK具体的路径就行。

当前项目的"Advanced Settings"是默认回填的,不需要修改。

直接"Created"即可。创建完成后的界面如下:

3、编写代码

在初学阶段,左侧工具栏最长使用的就是"Project"和"Structure"。

"Project"中以树状结构显示项目的目录和文件。"src"就是放源代码的地方。(我们还没开始写,所以是空的)。

"Structure"显示当前打开文件的代码结构(比如,Java类的方法、字段等),便于快速导航。目前显示 "No structure",因为没有文件被选中。

我们直接在src上右击,"New"-->"Java Class"准备创建一个Java类。

"New"还有一个选项"Package"是创建包的。

对包、类不太熟悉的,可以看下:

这里我们直接在创建类时,带上包名。

创建完成后的界面:

"com.lazy.snail"是包名,"HelloJava"是类名。

在代码编辑区域输入"psvm",然后按下Tab键,就会直接输出main方法。

这种输入几个字母快速生成代码使用的是IDEA的实时模版,后面会列出常用的。

左侧的Structure也显示出了main方法。

三、基础快捷键

3.1代码导航与搜索

Ctrl + N 快速查找类:输入类名的部分进行模糊匹配

Ctrl + Shift + N 快速查找文件:跟查找类差不多,可以快速查找文件

Ctrl + Alt + Shift + N 快速查找符号:不仅能查找类、方法,还能查找变量、字段等所有“符号”。

Shift + Shift 全局搜索:双击Shift键,弹出的全局搜索框。你可以搜索任何内容:类、文件、符号、配置项,甚至是IDEA的命令。熟练使用它能极大减少你在菜单中寻找功能的时间。

找东西我一般都使用这个快捷键。

Alt + F7 查找代码使用的地方:把光标放在方法、变量或类名上,使用这个快捷键,就可以快速列出所有调用或使用这个元素的地方。

Ctrl + B(Ctrl + 鼠标左键) 跳转到定义:把光标放在一个变量、方法或类名上,使用这个快捷键或点击鼠标,可以跳转到它的定义位置。

Ctrl + Alt + B 跳转到实现:光标在一个接口方法或抽象方法上时,按下快捷键,IDEA会列出所有实现该方法的类或方法,你可以选择跳转。

当前案例没有实现,使用后:

Ctrl + Shift + E 最近编辑的位置:显示你最近修改过代码的位置,精确到行。

3.2 代码编辑和生成

Alt + Insert 智能生成代码:可以快速生成构造函数、Getter/Setter、equals()和hashCode()、toString()等常用方法。

Ctrl + Alt + L 格式化代码:一键美化代码,使其符合统一的代码规范。避免因格式问题引起的洁癖症发作,提升代码可读性。

Ctrl + D 复制当前行或选中内容:快速复制一行或一块代码,省去了先复制再粘贴的步骤。

Ctrl + X 剪切当前行或选中内容:快速剪切一行或一块代码,光标在行首就可以了。

Ctrl + Alt + T 环绕代码块:选中一段代码,按下快捷键,可以选择用try-catch、if-else、for循环等结构将其包围。

Ctrl + Alt + M 提取方法:选中一段具有独立功能的代码,按下快捷键,IDEA会把这段代码提取成一个新方法,并自动处理参数和返回值。重构带代码的时候很好用。

Ctrl + Shift + Enter 智能补全语句:在当前语句结尾处按下这个快捷键,IDEA会自动添加分号、括号,甚至在if、for、while等语句后添加大括号。

Ctrl + Space 基本代码补全: 代码不全提示

Ctrl + Shift + Space 智能类型匹配补全:在需要某种类型对象的地方,IDEA会根据上下文提示符合类型的变量或方法。

3.3 快速定位与切换

Ctrl + Tab 在打开的文件之间快速切换: 类似Windows的Alt + Tab,用于快速切换当前已打开的文件。

Ctrl + F12 查看当前文件结构: 快速显示当前Java文件的所有方法和字段,方便快速定位。

Alt + F12 快速打开内置终端:不需要离开IDEA,就可以直接在内置终端中执行Maven命令、Git命令、系统命令等。

四、高级技巧

4.1 实时模版

psvm + Tab: 快速生成public static void main(String[] args) {}

sout + Tab:快速生成System.out.println();

fori + Tab:快速生成for (int i = 0; i < array.length; i++) {}

iter + Tab:快速生成for (ElementType element : collection) {}

还可以自定义模版:

File -> Settings/Preferences -> Editor -> Live Templates

效果就是在编辑区域输入logd然后Tab,就可以快速的生成日志声明。

4.2 后缀补全

expression.var + Tab:表达式结果提取为变量。

输入new HashMap<String, String>().var,按Tab,自动变成:Map<String, String> stringStringMap = new HashMap<>();

expression.for + Tab:为集合或数组生成增强for循环。

输入myList.for,按Tab,自动变为:for (String s : myList) {}

expression.null + Tab:生成if (expression == null)。

expression.notnull + Tab:生成if (expression != null)。

expression.cast + Tab:对表达式进行类型转换。

expression.try + Tab:用try-catch包裹表达式。

4.3 Debugger使用

调试是排查问题、理解代码执行流程的必备技能。

设置断点:

行断点:在代码行号旁边点击即可设置/取消。

条件断点:右键点击断点,选择More或Edit Breakpoint,可以在Condition中设置条件,只有当条件满足时断点才会被触发。

调试窗口:

变量窗口:在调试过程中,实时显示当前作用域内的所有变量及其值。

观察窗口:你可以添加自定义表达式,持续观察其值的变化,即使它不在当前作用域。

表达式求值:在调试暂停时,按下Alt + F8,可以即时输入任何Java表达式并查看其结果,非常适合临时测试或验证逻辑。

控制执行:

Step Over (F8): 单步跳过当前行,遇到方法调用时不进入方法内部。

Step Into (F7): 单步进入当前行的方法内部。

Step Out (Shift + F8): 从当前方法跳出,回到调用它的地方。

Resume Program (F9): 继续执行程序,直到下一个断点或程序结束。

Drop Frame:返回到函数调用的上一步(Ctrl + Alt + F8)

这是一个时光倒流的功能。当你调试进入一个方法后,发现参数不对或想重新执行,可以使用Drop Frame回到调用这个方法的上一步,重新进入或修改参数。

4.4 重构

Shift + F6 (Rename):智能重命名将光标放在类名、方法名、变量名上,按下后IDEA会帮你重命名所有引用到它的地方,非常安全高效。

Ctrl + Alt + V (Extract Variable):提取变量选中一个表达式,按下这个键,IDEA会将其提取为一个新的局部变量。

Ctrl + Alt + C (Extract Constant):提取常量选中一个字面量,按下后IDEA会将其提取为一个新的static final常量。

Ctrl + Alt + F (Extract Field):提取字段选中一个表达式,按下后IDEA会将其提取为一个新的类字段。

Ctrl + Alt + P (Extract Parameter):提取参数选中一个变量或表达式,把它作为参数传递给当前方法。

4.5 版本控制

IDEA深度集成了Git、SVN等版本控制系统,让你在IDE内完成大部分版本控制操作。

Commit(提交):Ctrl + K

打开提交窗口,查看修改,编写提交信息。

Push(推送):Ctrl + Shift + K

将本地提交推送到远程仓库。

Pull(拉取):Ctrl + T

从远程仓库拉取最新代码。

Update Project(更新项目):Ctrl + T

同步项目代码。

Show History(查看历史): 右键文件 -> Git -> Show History

查看文件的修改历史和提交记录。

Compare with... (比较): 右键文件 -> Compare with...

比较当前文件与版本库中某个版本或另一个分支的差异。IDEA的可视化差异对比非常直观。

4.6 代码分析

IDEA会实时分析你的代码,提供各种提示和建议,帮助你发现潜在问题和优化空间。

“小黄灯”提示:当代码行左侧出现一个黄色小灯泡图标时,表示IDEA检测到可优化的代码或潜在问题。点击它,会弹出建议列表,例如:“Remove unused import”(移除未使用的导入)

“Replace with enhanced 'for' loop”(替换为增强for循环)

“Simplify 'if' statement”(简化if语句)

学会看这些提示并采纳建议,你的代码会更简洁、更规范、更健壮。

Inspections(检查):File -> Settings/Preferences -> Editor -> Inspections。

这里列出了IDEA所有的代码检查规则。

你可以根据自己的喜好开启或关闭某些检查,甚至调整它们的严重级别。

五、其他

5.1 插件

通过安装插件,你可以为IDEA添加更多功能。

安装路径: File -> Settings/Preferences -> Plugins。

需要的插件可以直接在插件市场搜索:

目前我们使用较多的插件就是jclasslib,后期使用到的常见插件会在后续的文章中列出。

5.2 UI主题与字体设置

这块就一带而过了,全靠自己喜好,空闲时候看看就行,不是重点。

主题:File -> Settings/Preferences -> Appearance & Behavior -> Appearance。

Theme下拉菜单可以选择:Light(亮色)、Darcula(深色,默认推荐)、High contrast(高对比度)。

插件市场也有很多自定义主题。

字体:File -> Settings/Preferences -> Editor -> Font。

选择你喜欢的编程字体(例如JetBrains Mono、Fira Code、Consolas等),调整Size(字号)和Line height(行高),找到最适合自己的显示效果就行了。

5.3 存与性能优化

如果你的IDEA运行缓慢,就有可能是内存分配不足或插件太多了。

调整JVM内存:

Help -> Change Memory Settings...。

根据你的电脑内存大小,适当调大IDEA的Xmx(最大内存)和Xms(初始内存),

例如设置为2048MB或4096MB。调整后需要重启IDEA。

关闭不常用插件:

在Plugins设置里,禁用那些你不常用或不需要的插件,它们可能会占用额外的内存和CPU资源。

定期清理缓存:

File -> Invalidate Caches / Restart...。

选择Invalidate and Restart。

清除IDEA的缓存并重启,有时能解决一些奇奇怪怪的问题。

结语

大致先梳理到这里吧。

IDEA肯定不止我梳理的这些功能,而且它还在不断地丰富自己的功能。

在写代码的时候,会不自觉的使用这些功能,慢慢的就形成了肌肉记忆。

下一篇预告

Day23 | Java泛型详解

如果你觉得这系列文章对你有帮助,欢迎关注专栏,我们一起坚持下去!

更多文章请关注我的公众号《懒惰蜗牛工坊》