有没有办法查看Java中默认类(java.awt.*;
,javax.swing.*;
等)背后的实际代码,看完全发生了什么?< / p>
我的意思不仅仅是文档或方法列表等,而是源代码本身的全部细节(换句话说,如果复制,可以用来创建整个方法/类的精确副本)并粘贴到Java程序的代码中。
答案 0 :(得分:19)
所有API类的Java源代码都在JDK安装程序中附带一个名为src.zip
的文件中。它通常只是坐在您的安装目录中。解压缩,然后看看。
如果不存在,您可能选择不安装它;重新安装JDK并注意“源代码”选项,确保包含它。
答案 1 :(得分:6)
为此,我经常使用http://docjar.com。
示例:我想查看String
的源代码。搜索FQCN,java.lang.string
(使用“包/类名”选项)。单击所需的结果,然后单击页面顶部的source
链接。沃伊拉:http://www.docjar.com/html/api/java/lang/String.java.html
答案 2 :(得分:3)
src.zip
通常附带JDK。
答案 3 :(得分:3)
我还发现http://www.codatlas.com是一个寻找基于JVM的源代码的好地方。例如,如果您正在寻找如何实现java.awt.ActionEvent,您可以在此处找到它:
它的优点在于它通过添加交叉引用和语法高亮来提供类似浏览体验的IDE。
答案 4 :(得分:1)
对于那些使用Linux发行版的人,比如ubuntu,archlinux等。你可以通过相应的包管理系统获得 openjdk源代码。这意味着您可以选择更快的镜像来获取源代码。
对于ubuntu用户:
$ sudo apt-get install openjdk-7-source
对于Archlinux用户:
$ sudo pacman -S openjdk7-src
来源将位于$JAVA_HOME
,类似于/usr/lib/jvm/java-7-openjdk/src.zip
。
其他发行版也会有相同的包名,所以这里没有列出。
答案 5 :(得分:0)
1)使用Eclipse将源代码附加到C:\ users \ program files \ jdkx.x中 2)如果您只是浏览代码并在机器上节省重度日食所使用的内存,请使用GrepCode