IDEA 阅读源码绝技
1、定位到方法实现类
public static Object getBean(String name) {
return applicationContext.getBean(name);
}
如以上代码,IDEA 如何跳转到 getBean 方法的实现类?
在 IDEA 中,CTRL + 鼠标左击 默认会跳到方法所在的接口,如 getBean 就会跳到 BeanFactory 接口里面去。
org.springframework.beans.factory.BeanFactory
在 IDEA 中略显麻烦,在引用的方法上 CTRL + ALT + 鼠标左击(B)可以实现跳转至实现类,如果有多个实现类会弹出让你选择。
点击右上角 Open as Tool Window 图标还能展开更多详细。
2、查看类层级关系
到了 BeanFactory 类,在任意地方使用快捷键 CTRL + H 可以打开类的继承层级面板。
或者直接选中 BeanFactory 类名称,再按 CTRL + ALT + 鼠标左击(B),同样可以展示 BeanFactory 类的所有继承类的关系。
还有更屌的!
右键任意类,选择 Diagrams > Show Diagram… 可以打开类的继承图。
看起来有点乱,那是因为我选择了所有实现类展示,实际请合理利用 Show Parents 和 Show Implementations 菜单。
3、查看类结构
如上图所示,IDEA 中也有 Eclipse 中 outline 的面板,叫作:Structure,有了这个面板,可以快速浏览一个类的大纲,也可以快速定位到类的方法、变量等。大家想学习 Eclipse 的也可以关注Java技术栈微信公众号,在后台回复:"工具",即可获取相关教程。
也可以使用快捷键 Alt + 7 调出这个面板。
4、源码统计
如图所示,栈长在 IDEA 中装了一个 Statistic 插件,这个插件只支持 JDK 1.8+。
有了这个插件,它可以在项目中按文件类型进行代码的行数、数量、大小统计。这样你就能知道整个源码的总体数量,你也可以把已经阅读的做统计,慢慢实现源码阅读的攻破。
熟练的运用 IDEA 中各个小技巧,让阅读跟踪源码变得更轻松。
IDEA 阅读源码绝技相关推荐
- 阅读源码的 4 个绝技,我必须分享给你!
为什么要阅读源码? 1.在通用型基础技术中提高技术能力 在 JAVA 领域中包含 JAVA 集合.Java并发(JUC)等, 它们是项目中使用的高频技术,在各种复杂的场景中选用合适的数据结构.线程并发 ...
- 起飞,会了这4个 Intellij IDEA 调试魔法,阅读源码都简单了
前言 上一篇文章 IntelliJ IDEA 高级调试之Stream Trace 算是 IntelliJ IDEA 高级调试技巧的开胃菜,很多小伙伴被这个小技巧征服.趁热打铁,今天给大家带来几个我日常 ...
- 朋友问我学习高并发需不需要阅读源码,我是这样分析的!!
来自:冰河技术 写在前面 最近正在写[高并发专题]的文章,其中,在[高并发专题]中,有不少是分析源码的文章,很多读者留言说阅读源码比较枯燥!问我程序员会使用框架了,会进行CRUD了,是否真的有必要阅读 ...
- android源码阅读笔记1-配置源码路径/阅读源码方法讨论
开始之前 android studio中配置android源码路径 android studio中有源码的路径,你只需要打开SDK Manager下载源码然后重启android studio即可查看源 ...
- 为什么优秀的程序猿都阅读源码
点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:后端程序员必备:书写高质量SQL的30条建议个人原创+1博客:点击前往,查看更多 来源: CSDN(ID:CSD ...
- 源码面前没有秘密,推荐 9 个带你阅读源码的开源项目
在文章开始之前,请各位先回忆下在日常开发过程中,都使用或依赖了哪些开源项目?是不是发现,开源项目已经完全融入到日常开发! 如今大多数的程序员技术栈和工具箱里,或多或少都有开源项目的身影:大到操作系统. ...
- java程序阅读技巧_Java程序员阅读源码的小技巧,原来大牛都是这样读的,赶紧看看!...
1.Quick Type Hierarchy 快速查看类继承体系. 快捷键:Ctrl + T 查看类很多人可能都知道,可源码阅读的时候更多用来查看方法体系更重要,可以方便快速的定位到方法的实现类.如: ...
- jdk源码分析书籍 pdf_如何阅读源码?
点击上方"IT牧场",选择"设为星标" 技术干货每日送达! 阅读源码是每个优秀开发工程师的必经之路,那么这篇文章就来讲解下为什么要阅读源码以及如何阅读源码. 首 ...
- 【转】使用 vim + ctags + cscope + taglist 阅读源码
原文网址:http://my.oschina.net/u/554995/blog/59927 最近,准备跟学长一起往 linux kernel 的门里瞧瞧里面的世界,虽然我们知道门就在那,但我们还得找 ...
最新文章
- mysqluc安装MYSQL_安装mysql几种方法
- linux mread 命令详解
- python词频统计_python统计词频的三种方法
- MFC界面编程新思路--模仿MATLAB式的界面
- 零基础快速开发全栈后台管理系统(Vue3+ElementPlus+Koa2)—项目概述篇(一)
- RFID芯片有什么用
- 我一口气发现7个Safari 0day,苹果奖了7.5万美元
- linux下c语言版线程池
- C++ traits学习笔记(一)
- 安科瑞电力监控系统在安徽华光有效薄膜太阳能电池高温玻璃项目的应用
- 6-28小组会议记录
- 初学cocoa开发:带你走入不一样的世界
- 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛题解
- Android开发面试经典题目
- 大一计算机导论手写笔记,川大学霸笔记来啦(多图)!
- 前端linux基础,这一篇就够了
- 陕汽汉德、一汽集团信息化调研报告
- DateTime常用方法,不积硅步无以至千里
- 如何将电脑的动态IP设置成静态IP,并成功上网
- 《乐高EV3机器人搭建与编程》——1.3 LEGO单位
热门文章
- Room DB Error: AppDatabase_Impl does not exist
- Auto.js制作短视频app(添加登陆注册界面)
- java版林地府邸种子,我的世界林地府邸种子2021
- [USACO3.2]魔板 Magic Squares
- 计算机主机的安装方法,电脑主机水冷安装教程 电脑主机水冷怎么安装
- objective-c与Lua的交互(一)
- 抖音、腾讯、阿里、美团春招服务端开发岗位硬核面试(完结)
- 别再逼三星了,它在起死回生的路上挣扎很久了...
- 数学建模必备算法模型,全新升级!
- pdf太大怎么变小?pdf压缩变小的方法