我在哪里可以找到Java中“构建”类的源代码?

时间:2010-01-27 14:30:56

标签: java class packages location

在我的Java代码的开头,我有:

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.event.*;
import javax.swing.*;

然后我有以下内容:

public class KeyEventDemo extends JFrame
        implements KeyListener,
        ActionListener

我试图了解代码的作用。我从一开始就开始了。例如,我想知道定义了类JFrame(我认为它属于“java.awt.event”或“javax.swing”包。我也希望看到热定义接口KeyListener。

我的问题是我不知道在哪里可以找到相应的源代码。我尝试了以下方法:

locate event | grep awt

什么都没找到。请允许任何人帮助我们,请求。

6 个答案:

答案 0 :(得分:2)

您是否可以访问IDE(例如Eclipse或Intellij)?它可以帮助极大地浏览代码和JDK代码。如果你没有使用它,我强烈推荐它。

对于您的特定问题,awt类是JDK包的一部分。您需要JDK源代码。您可以下载第6版源代码here

答案 1 :(得分:2)

源代码并不总是带有java,只是编译的类。但是,您并不真正需要源代码,您需要使用的接口/类的描述。这些被称为API文档。

以下是java 5的java api文档: http://java.sun.com/j2se/1.5.0/docs/api/

答案 2 :(得分:1)

通常有一个名为src.zip的文件,其中包含所有源代码 - 尝试解压缩,或将IDE指向它,然后查看。

答案 3 :(得分:1)

源代码通常可以在JDK安装目录中找到的名为src.zip的文件中找到。至少对于Sun JDK来说是这样。

答案 4 :(得分:1)

除非您从提供网站的代码下载,否则您无法看到其代码。

您可以使用Decompiler查看构建文件中的代码

答案 5 :(得分:1)

要考虑的一件事是,使用

等导入通常被认为是不好的做法
import javax.swing.*;

相反,请尝试:

import javax.swing.JFrame;

并为您需要的每个类执行一个import语句。这提高了可维护性。它还可以帮助您确定需要在API中查找的类。我绝对同意你应该从源代码的API开始。根据我的经验,Swing源代码比Swing Javadoc更复杂。你想要做的是查看Javad的JFrame,KeyEventListener和ActionListener。 Sun的Swing Trail也有助于查看方法和方法,特别是在涉及事件时。