如何阅读 JDK 源代码
本文介绍一些如何系统地阅读 JDK 源代码。目前只涉及源代码获取方式和阅读工具。
Github 上的源代码仓库
我目前找到了两个质量还不错的 JDK 源代码仓库:
- Source code for multiple JDK versions(1.6/1.7/1.8/1.9/10 JDK’s src.zip), Only for learning; “rt_debug.jar” can be used for debugging. https://github.com/zxiaofan/JDK
- JDK 源代码阅读笔记
阅读工具
IntelliJ IEDA
文章开头推荐的第二个源代码仓库JDK 源代码阅读笔记,其中就有一个 IDEA 工程,可以很方便的使用 IDEA 查看源代码。不过直接 clone 仓库或者通过 Github 下载 zip 文件,下载下来的只有 master 分支,这一点需要注意。
优点
使用 IDEA 阅读源代码的好处在于,IDEA 会对源代码进行分析(Code Analysis),对源代码加上各种颜色的标记,同时还可以通过按住 CTRL 按键然后点击方法名,就可以快速定位到方法的定义处。类似这样的功能还有很多,这为我们阅读源代码提供了很大的方便。
缺点
IntelliJ IDEA 启动速度比较慢。
Visual Studio Code
优点
和 IntelliJ IDEA 相比,VS Code本身启动的速度会快一些。
对比阅读
因为 JDK 代码是在不断优化和更新的,有的时候还需要把一个类在不同版本的实现对比着来看,或者把一些线程安全的类和非线程安全的类对比着来看。可以通过一些软件来对比着看。
IntelliJ 集成的 diff 功能
Visual Studio Code 的 Partial Diff 插件
在 Visual Studio Code 中下载一个 叫 Partial Diff 的插件就可以很方便的对比了。这个插件的主页:Partial Diff - Visual Studio Marketplace
Beyond Compare
这个软件是收费的,不过可以试用30天。具体信息可以到官方网站去了解:Beyond Compare 中文官网。