2011-06-09 148 views
13

有什么方法可以查看Java中默认类背后的实际代码(java.awt.*;javax.swing.*;等),看看究竟是这是怎么回事?我不是指只是文档或方法列表等,而是源代码本身的全部细节(换句话说,可以用来创建整个方法/类的精确副本的东西if复制并粘贴到Java程序的代码中)。查看java源代码

+2

在IntelliJ IDE等IDE中,您可以像浏览其他任何东西一样浏览这些软件包的源代码。 – 2014-10-19 07:24:49

+1

扩展@ChrisMartin,右键单击编辑器中的关键字(例如'String') - >“Go to” - >“Implementation(s)”...作为想法14.0.2 – ironicaldiction 2015-05-04 14:05:32

回答

17

所有API类的Java源代码都在JDK安装程序中的一个名为src.zip的文件中。它通常只是坐在你的安装目录中。解压缩,然后看看。

如果不在那里,您可能选择不安装它;重新安装JDK并观察“源代码”选项,确保包含它。

3

src.zip通常附带JDK。

5

为了这个目的,我经常使用http://docjar.com

例如:我想查看String的源代码。搜索FQCN,java.lang.string(使用“Package/class Name”选项)。点击您想要的结果,然后点击页面顶部的source链接。瞧:http://www.docjar.com/html/api/java/lang/String.java.html

+1

[grepcode](http:// grepcode.com/snapshot/repository.grepcode。com/java/root/jdk/openjdk/6-b14 /)是快速源代码检查的另一个很好的在线资源,但是当他们打印linenumbers时,从那里复制代码并粘贴到java源文件中是很烦人的;) – 2011-06-09 06:51:08

+1

@ Andreas_D - 只需点击屏幕右上方的小“原始”链接即可。 – jkraybill 2011-06-09 08:02:42

+0

@jkraybill - 酷,没有注意到那些超链接;) – 2011-06-09 08:07:39

0

1)使用Eclipse附加在C源代码:\用户\ Program Files文件\ jdkx.x
2)使用GrepCode,如果你只是浏览的代码,并保存的重物日食使用的内存在你的机器上

0

对于那些使用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地方。

其他发行版也会有同样的包名,所以这里没有列出。