沉淀再出发:关于IntelliJ IDEA使用的一些总结
沉淀再出发:关于IntelliJ IDEA使用的一些总结
一、前言
在使用IDEA的时候我们会发现,如果我们先写了一个类的名字,而没有导入这个类的出处,就会提示出错,但是不能自动加入,非常的苦恼,并且也不会提示代码的定义和来源,这些都需要我们进行设置。
二、一些简单问题的设置
2.1、对于鼠标移到代码上没有提示的解决办法
我们打开File-》settings-》editor-》general,然后找到下面的当鼠标移动到的时候显示文档信息,这样就可以了。

2.2、使用idea的时候,先写入类而没有导入的时候不能自动帮我们导入
这个解决办法也很简单,我们打开File-》settings-》editor-》general-》auto import,将里面的对于各种不同的语言的,自动导入没有歧义的包引用给选上,这样我们就可以发现自动补全没有歧义的包了,非常的方便。

可以发现IDEA给了很多我们自己配置的特权,这些配置初始化是关闭的,需要我们去选择和探索,我们平时应该多多积累。

2.3、一些其他的快捷命令
ctrl+alt+u可以快捷的生成类图:

ctrl + alt + l 格式化代码,需要先选中代码,或者使用ctrl + alt + L;
ctl + alt + o 去除无用引用,其实上面我们设置了自动优化引用,如果有无用的就会自动删除了。

ctrl+shift+u:大小写转换:

shift+F6:重命名文件,需要先选中文件

alt + F7 定位引用,需要先找到想要查找的对象。
2.4、通过某种方式可以自动补全代码
常用的有fori/sout+Tab即可生成循环、System.out.main方法等boilerplate样板代码;例如要输入for(User user : users)只需输入user.for+Tab;再比如,要输入Date birthday = user.getBirthday();只需输入user.getBirthday().var+Tab即可。代码标签输入完成后,按Tab,生成代码。

2.5、其他的常用快捷键
代码生成:
Ctrl+Alt+O 优化导入的类和包
Alt+Insert 生成代码(如get,set方法,构造函数等) 或者右键(Generate)
fori + Tab : 生成循环,
sout + Tab : System.out.println();
Ctrl+Alt+T 生成try catch 或者 Alt+enter
CTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里
Ctrl + O 重写方法
Ctrl + I 实现方法
Ctr+shift+U 大小写转化
ALT+回车 导入包,自动修正
ALT+/ 代码提示
CTRL+J 自动代码
Ctrl+Shift+J,整合两行为一行
CTRL+空格 代码提示
CTRL+SHIFT+SPACE 自动补全代码
CTRL+ALT+L 格式化代码
CTRL+ALT+I 自动缩进
CTRL+ALT+O 优化导入的类和包
ALT+INSERT 生成代码(如GET,SET方法,构造函数等)
CTRL+E 最近更改的代码
CTRL+ALT+SPACE 类名或接口名提示
CTRL+P 方法参数提示
CTRL+Q,可以看到当前方法的声明
Shift+F6 重构-重命名 (包、类、方法、变量、甚至注释等)
Ctrl+Alt+V 提取变量
查询快捷键:
Ctrl+Shift+Backspace可以跳转到上次编辑的地方
CTRL+ALT+ left/right 前后导航编辑过的地方
ALT+7 靠左窗口显示当前文件的结构
Ctrl+F12 浮动显示当前文件的结构
ALT+F7 找到你的函数或者变量或者类的所有引用到的地方
CTRL+ALT+F7 找到你的函数或者变量或者类的所有引用到的地方
Ctrl+Shift+Alt+N 查找类中的方法或变量
双击SHIFT 在项目的所有目录查找文件
Ctrl+N 查找类
Ctrl+Shift+N 查找文件
CTRL+G 定位行
CTRL+F 在当前窗口查找文本
CTRL+SHIFT+F 在指定窗口查找文本
CTRL+R 在 当前窗口替换文本
CTRL+SHIFT+R 在指定窗口替换文本
ALT+SHIFT+C 查找修改的文件
CTRL+E 最近打开的文件
F3 向下查找关键字出现位置
SHIFT+F3 向上一个关键字出现位置
选中文本,按Alt+F3 ,高亮相同文本,F3逐个往下查找相同文本
F4 查找变量来源
CTRL+SHIFT+O 弹出显示查找内容
Ctrl+W 选中代码,连续按会有其他效果
F2 或Shift+F2 高亮错误或警告快速定位
Ctrl+Up/Down 光标跳转到第一行或最后一行下
Ctrl+B 快速打开光标处的类或方法
CTRL+ALT+B 找所有的子类
CTRL+SHIFT+B 找变量的类
Ctrl+Shift+上下键 上下移动代码
Ctrl+Alt+ left/right 返回至上次浏览的位置
Ctrl+X 删除行
Ctrl+D 复制行
Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者/*...*/ )
Ctrl+H 显示类结构图
Ctrl+Q 显示注释文档
Alt+F1 查找代码所在位置
Alt+1 快速打开或隐藏工程面板
Alt+ left/right 切换代码视图
ALT+ ↑/↓ 在方法间快速移动定位
CTRL+ALT+ left/right 前后导航编辑过的地方
Ctrl+Shift+Backspace可以跳转到上次编辑的地
Alt+6 查找TODO
其他快捷键:
SHIFT+ENTER 另起一行
CTRL+Z 倒退(撤销)
CTRL+SHIFT+Z 向前(取消撤销)
CTRL+ALT+F12 资源管理器打开文件夹
ALT+F1 查找文件所在目录位置
SHIFT+ALT+INSERT 竖编辑模式
CTRL+F4 关闭当前窗口
Ctrl+Alt+V,可以引入变量。例如:new String(); 自动导入变量定义
Ctrl+~,快速切换方案(界面外观、代码风格、快捷键映射等菜单)
调试快捷键:
alt+F8 debug时选中查看值
Alt+Shift+F9,选择 Debug
Alt+Shift+F10,选择 Run
Ctrl+Shift+F9,编译
Ctrl+Shift+F8,查看断点
F7,步入
Shift+F7,智能步入
Alt+Shift+F7,强制步入
F8,步过
Shift+F8,步出
Alt+Shift+F8,强制步过
Alt+F9,运行至光标处
Ctrl+Alt+F9,强制运行至光标处
F9,恢复程序
Alt+F10,定位到断点
重构,比如我们选中一段代码生成一个函数,或者将一个函数变成一段代码,可以查看https://www.jianshu.com/p/ab298b46bf50:
Ctrl+Alt+Shift+T,弹出重构菜单
Shift+F6,重命名
F6,移动
F5,复制
Alt+Delete,安全删除
Ctrl+Alt+N,内联
2.6、导入源代码便于查看
导入的方法很简单,通过如下步骤并且找到要导入的源代码文件,这个安装JDK的时候就自动安装了,比如JDK11的在如下文件中:


三、总结
对于一个软件的使用,我们只有不断的摸索,多看一下使用的方法,才能更加快捷的使用,同样加速我们的开发效率。
参考文献:https://blog.csdn.net/houfeng30920/article/details/79037647
沉淀再出发:关于IntelliJ IDEA使用的一些总结的更多相关文章
- 沉淀再出发:dubbo的基本原理和应用实例
沉淀再出发:dubbo的基本原理和应用实例 一.前言 阿里开发的dubbo作为服务治理的工具,在分布式开发中有着重要的意义,这里我们主要专注于dubbo的架构,基本原理以及在Windows下面开发出来 ...
- 沉淀再出发:spring boot的理解
沉淀再出发:spring boot的理解 一.前言 关于spring boot,我们肯定听过了很多遍了,其实最本质的东西就是COC(convention over configuration),将各种 ...
- 沉淀再出发:IoC和AOP的本质
沉淀再出发:IoC和AOP的本质 一.前言 关于IoC和AOP这两个概念,如果我们没有深入的理解可以说是根本就不理解Spring这个架构的,同样的由Spring演变出来的Spring Boot和Spr ...
- 沉淀再出发:再谈java的多线程机制
沉淀再出发:再谈java的多线程机制 一.前言 自从我们学习了操作系统之后,对于其中的线程和进程就有了非常深刻的理解,但是,我们可能在C,C++语言之中尝试过这些机制,并且做过相应的实验,但是对于ja ...
- 沉淀再出发:用python画各种图表
沉淀再出发:用python画各种图表 一.前言 最近需要用python来做一些统计和画图,因此做一些笔记. 二.python画各种图表 2.1.使用turtle来画图 import turtle as ...
- 沉淀再出发:在python3中导入自定义的包
沉淀再出发:在python3中导入自定义的包 一.前言 在python中如果要使用自己的定义的包,还是有一些需要注意的事项的,这里简单记录一下. 二.在python3中导入自定义的包 2.1.什么是模 ...
- 沉淀再出发:java中的equals()辨析
沉淀再出发:java中的equals()辨析 一.前言 关于java中的equals,我们可能非常奇怪,在Object中定义了这个函数,其他的很多类中都重载了它,导致了我们对于辨析其中的内涵有了混淆, ...
- 沉淀再出发:web服务器和应用服务器之间的区别和联系
沉淀再出发:web服务器和应用服务器之间的区别和联系 一.前言 关于后端,我们一般有三种服务器(当然还有文件服务器等),Web服务器,应用程序服务器和数据库服务器,其中前面两个的概念已经非常模糊了,但 ...
- 沉淀再出发:jetty的架构和本质
沉淀再出发:jetty的架构和本质 一.前言 我们在使用Tomcat的时候,总是会想到jetty,这两者的合理选用是和我们项目的类型和大小息息相关的,Tomcat属于比较重量级的容器,通过很多的容器层 ...
随机推荐
- 深度学习(十六) ReLU为什么比Sigmoid效果好
sigmoid: Relu: 为什么通常Relu比sigmoid和tanh强,有什么不同?主要是因为它们gradient特性不同. 1.sigmoid和tanh的gradient在饱和区域非常平缓,接 ...
- 浅谈内存映射I/O(MMIO)与端口映射I/O(PMIO)的区别
最近在看NVMeDirect和SPDK的源码,觉得有必要梳理一下MMIO和PMIO的区别.关于MMIO和PMIO,维基百科上是这么讲滴, Memory-mapped I/O (MMIO) and po ...
- 关于对Enum的理解
之前一直对枚举类型的理解存在误解,现重新学习 Enum 类型的介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则 ...
- 【扫盲】】32位和64位Windows的区别
用户购买windows安装盘或者重新安装操作系统的时候,通常会遇到这个问题,就是不知道该如何选择使用32位操作系统和64位操作系统,有人说64位系统速度快,其实理论上确实是这样,不过具体还要根据你的个 ...
- 记一次接口调用耗时服务端PHP-FPM配置调优
最近测试人员不时有反馈,APP首页打开会出现除了基本的页面布局,需要展示数据的地方都是空白. 想着最近首页接口有过调整,新增数据.会不会是接口改动导致的?? 但APP首页接口都是读取redis的,应该 ...
- 最新的 Vue 相关开源项目库汇总
优秀的vue 开源后台管理开源系统框架 https://panjiachen.github.io/vue-element-admin-site/#/zh-cn/README UI组件 开发框架 实用库 ...
- 使用 IntelliJ IDEA 创建第一个java程序 Hello World
1.首先打开新建项目窗口 1.1.选择创建java程序 1.2.Project SDK,选择jdk安装路径 1.3.Additional Libraries and Frameworks 额外的库与框 ...
- RabbitMQ---3、c#实现
1.EasyNetQ组件的使用 EasyNetQ组件的使用方式比较简单,跟很多组件都类似,例如:建立连接,进行操作做等等,对于EasyNetQ组件也是如此.(mq的升级,用于简化rabbitmq应用代 ...
- Java基础教程(8)--表达式、语句和块
一.表达式 表达式由变量和运算符组成.下面是一个简单的赋值表达式: a = 0; 表达式都具有运算结果,因为赋值表达式的运算结果是左侧操作数的值,因此上面的表达式将会返回一个0.可以使用简单的 ...
- Spring学习笔记:spring整合web之spring-web架包的引用(WebApplicationContextUtils注入容器)
WebApplicationContextUtils 一.Spring整合web之前 案例:给部门列表添加新部门 import org.apache.log4j.Logger; import org. ...