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

我在哪里可以找到“的源代码?”;“建立”;Java中的类?,java,class,packages,location,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, ActionListen

在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
locate event | grep awt
我试图理解代码的作用。我从头开始。例如,我想知道JFrame类是在哪里定义的(我认为它属于“java.awt.event”或“javax.swing”包。我还想知道接口KeyListener是如何定义的

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

public class KeyEventDemo extends JFrame
        implements KeyListener,
        ActionListener
locate event | grep awt

找不到任何东西。请问有人能帮我们吗。

您有访问IDE(如Eclipse或Intellij)的权限吗?它将极大地帮助您浏览代码和JDK。如果您还没有使用IDE,我强烈推荐它


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

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

源代码可以全部使用您可以在JDK安装目录中找到一个名为
src.zip
的文件。至少Sun JDK是这样。

源代码并不总是随java提供,只是编译的类。但是,您并不真正需要源代码,您需要所用接口/类的描述。这些称为API文档计算

以下是java 5的java api文档:

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


可以使用反编译程序从构建文件

< p>查看代码,有一点需要考虑的是,使用一个导入(如

)通常被认为是不好的做法。
import javax.swing.*;
相反,请尝试:

import javax.swing.JFrame;
并根据需要为每个类执行一条导入语句。这提高了可维护性。它还将帮助您准确地确定需要在API中查找哪些类。我绝对同意您应该从API开始,而不是从源代码开始。根据我的经验,Swing源代码比Swin更复杂你要做的是查看JFrame、KeyEventListener和ActionListener的Javadoc。Sun的也有助于了解如何和为什么,特别是在事件方面