我的编程空间,编程开发者的网络收藏夹
学习永远不晚

IDEA高效查看源码的快捷键及小技巧

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

IDEA高效查看源码的快捷键及小技巧

基本操作

查看当前类的层次结构

使用频率相关快捷键
⭐⭐⭐⭐⭐Ctrl + H

平时,我们阅读源码的时候,经常需要查看类的层次结构。就比如我们遇到抽象类或者接口的时候,经常需要查看其被哪些类实现。

拿 Spring 源码为例,BeanDefinition 是一个关于 Bean 属性/定义的接口。

public interface BeanDefinition extends AttributeAccessor, BeanMetadataElement {
  ......
}

如果我们需要查看 BeanDefinition 被哪些类实现的话,只需要把鼠标移动到 BeanDefinition 类名上,然后使用快捷键 Ctrl + H 即可。

在这里插入图片描述

同理,如果你想查看接口 BeanDefinition 继承的接口 AttributeAccessor 被哪些类实现的话,只需要把鼠标移动到 AttributeAccessor 类名上,然后使用快捷键 Ctrl + H 即可。

查看类结构

使用频率相关快捷键
⭐⭐⭐⭐Alt + 7(Win) / Command +7 (Mac)

类结构可以让我们快速了解到当前类的方法、变量/常量,非常使用!

我们在对应的类的任意位置使用快捷键 Alt + 7(Win) / Command +7 (Mac)即可。

在这里插入图片描述

快速检索类

使用频率相关快捷键
⭐⭐⭐⭐⭐Ctrl + N (Win) / Command + O (Mac)

使用快捷键 Ctrl + N (Win) / Command + O (Mac)可以快速检索类/文件。

在这里插入图片描述

关键字检索

使用频率相关快捷键
⭐⭐⭐⭐⭐见下文
  • 当前文件下检索 : Ctrl + F (Win) / Command + F (Mac)
  • 全局的文本检索 : Ctrl + Shift + F (Win) / Command + Shift + F (Mac)

查看方法/类的实现类

使用频率相关快捷键
⭐⭐⭐⭐Ctrl + Alt + B (Win) / Command + Alt + B (Mac)

如果我们想直接跳转到某个方法/类的实现类,直接在方法名或者类名上使用快捷键 Ctrl + Alt + B/鼠标左键 (Win) / Command + Alt + B/鼠标左键 (Mac) 即可。

如果对应的方法/类只有一个实现类的话,会直接跳转到对应的实现类。

比如 BeanDefinition 接口的 getBeanClassName() 方法只被 AbstractBeanDefinition 抽象类实现,我们对这个方法使用快捷键就可以直接跳转到 AbstractBeanDefinition 抽象类中对应的实现方法。

public interface BeanDefinition extends AttributeAccessor, BeanMetadataElement {
  @Nullable
	String getBeanClassName();
  ......
}

如果对应的方法/类有多个实现类的话,IDEA 会弹出一个选择框让你选择。

比如 BeanDefinition 接口的 getParentName() 方法就有多个不同的实现。

在这里插入图片描述

查看方法被使用的情况

使用频率相关快捷键
⭐⭐⭐⭐Alt + F7

我们可以通过直接在方法名上使用快捷键 Alt + F7 来查看这个方法在哪些地方被调用过。

在这里插入图片描述

查看最近使用的文件

使用频率相关快捷键
⭐⭐⭐⭐⭐Ctrl + E(Win) / Command +E (Mac)

你可以通过快捷键 Ctrl + E(Win) / Command +E (Mac)来显示 IDEA 最近使用的一些文件。

在这里插入图片描述

查看图表形式的类继承链

使用频率相关快捷键
⭐⭐⭐⭐相关快捷键较多,不建议记

点击类名 右键 ,选择 Shw Diagrams 即可查看图表形式的类继承链。

在这里插入图片描述

你还可以对图表进行一些操作。比如,你可以点击图表中具体的类 右键,然后选择显示它的实现类或者父类。

在这里插入图片描述

再比如你还可以选择是否显示类中的属性、方法、内部类等等信息。

在这里插入图片描述

如果你想跳转到对应类的源码的话,直接点击图表中具体的类 右键 ,然后选择 Jump to Source

在这里插入图片描述

插件推荐

一键生成方法的序列图

序列图(Sequence Diagram),亦称为循序图,是一种 UML 行为图。表示系统执行某个方法/操作(如登录操作)时,对象之间的顺序调用关系。

这个顺序调用关系可以这样理解:你需要执行系统中某个对象 a 提供的方法/操作 login(登录),但是这个对象又依赖了对象 b 提供的方法 getUser(获取用户)。因此,这里就有了 a -> b 调用关系之说。

我们可以通过 SequenceDiagram 这个插件一键生成方法的序列图。

如果你因为网络问题没办法使用 IDEA 自带的插件市场的话,也可以通过 IDEA 插件市场的官网手动下载安装。

在这里插入图片描述

如何使用呢?

1、选中方法名(注意不要选类名),然后点击鼠标右键,选择 Sequence Diagram 选项即可!

在这里插入图片描述

2、配置生成的序列图的一些基本的参数比如调用深度之后,我们点击 ok 即可!

在这里插入图片描述

3、你还可以通过生成的时序图来定位到相关的代码,这对于我们阅读源码的时候尤其有帮助!

在这里插入图片描述

4、时序图生成完成之后,你还可以选择将其导出为图片。

在这里插入图片描述

相关阅读:《IDEA一键生成方法的序列图神操作》。

项目代码统计

为了快速分析项目情况,我们可以对项目的 代码的总行数、单个文件的代码行数、注释行数等信息进行统计。

Statistic 这个插件来帮助我们实现这一需求。

在这里插入图片描述

有了这个插件之后你可以非常直观地看到你的项目中所有类型的文件的信息比如数量、大小等等,可以帮助你更好地了解你们的项目。

在这里插入图片描述

你还可以使用它看所有类的总行数、有效代码行数、注释行数、以及有效代码比重等等这些东西。

在这里插入图片描述

如果,你担心插件过多影响 IDEA 速度的话,可以只在有代码统计需求的时候开启这个插件,其他时间禁用它就完事了!

相关阅读:《IDEA插件Statistic统计代码快速分辨烂项目》

以上就是IDEA高效查看源码的快捷键及小技巧的详细内容,更多关于IDEA看源码快捷键技巧的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

IDEA高效查看源码的快捷键及小技巧

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

IDEA高效查看源码的快捷键及小技巧是什么

这篇文章主要为大家分析了IDEA高效查看源码的快捷键及小技巧是什么的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“IDEA高效查看源码的快捷键及小技巧是什么”
2023-06-28

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录