why
在学习主流框架源码时, 经常要在各个源码的类或方法的调用间来回穿梭查看, 这就需要一款很好用IDE工具来打辅助. InteliJ-IDEA
工具就提供了强大的源码追踪和继承链展示功能. 下面就记录自己学习过程中用idea到的diagram
功能.
查看继承关系
在你想查看的类的标签页内,点击右键,选择 Diagrams
,其中有 show Diagrams
和 show Diagrams Popup
,只是前者新建在标签页内,后者以浮窗的形式展示; 也可以看到提供了快捷键操作. (Ctrl+Alt+Shit+U, Ctrl+Alt+U)
你也可以从左边的导航目录树中,对你想查看的类点击右键,同样选择 Diagrams
,效果是一样的.
然后你就会得到如下图所示的继承关系图形.
上图中箭头的含义:
蓝色实线箭头
是指继承关系绿色虚线箭头
是指接口实现关系
优化继承链
去掉不需要的类
得到的继承关系图,有些并不是我想了解的,比如上图的IClientConfigAware,我只想关注IRule
的那几个继承关系,怎么办?
简单,删掉。点击选择你想要删除的类,然后直接使用键盘上的delete
键就行了。清理后的关系图形如下:
展示类的详细信息
继承下来的那些方法如何查看呢? 在页面点击右键,选择 show categories,根据需要可以展开类中的属性、方法、构造方法等等。当然,第二种方法也可以直接使用上面的工具栏.
展开方法和属性的关系图形:
如果还想继续细粒度筛选类中的方法和属性, 比如想看 protected 权限及以上范围的属性或方法. 右键选择Change Visibility Level
或使用工具栏, 根据需要调整即可.
在遇到继承关系复杂的依赖图形中, 整体关系图概览可能比较小, 按住Alt
键, 出现放大镜.
加入其他类到关系图
当我们还需要查看其他类和当前类是否有继承上的关系的时候,我们可以选择加其加入到当前的继承关系图形中来. 在页面点击右键选择Add Class to Diagram
或者快捷键(空格键Space),然后输入你想加入的类即可.
查看具体代码
如果你想查看某个类具体源码, 选中某个类后点击右键,选择 Jump to Source
或者按快捷键F4
.
在进入某个类后,如果还想快速地查看该类的其他方法,有两种方法.
方法一: 利用 IDEA 提供的 structure
功能. (左边侧边栏或Alt+1
)调整出来.
方法二: Ctrl+F12
, 选择自己要查看方法或属性. 还可以输入筛选.
个人博客
欢迎各位访问我的个人博客: https://www.crystalblog.xyz/