0

我写了一个简单的 Hello World java 小程序并调用它HelloApplet.java。我为它创建了一个名为 HelloApplet.html 的 html 文件。这两个文件以及编译HelloApplet.class文件都驻留在我的 Windows 7 计算机的C:\temp目录中。这些HelloApplet.html文件有两行:

<applet codes = "HelloApplet" width = 300 height = 300>
</applet>

C:\temp我执行的目录

appletviewer HelloApplet.html

一切都按预期工作。

当我在 java 代码的顶部添加一个 package 语句时遇到了一个问题。第一行写着:

package applet;

然后我将 html 文件的第一行更改为:

<applet code = "applet.HelloApplet" width = 300 height = 300>

仍然从C:\temp我运行appletviewer,但这次它不起作用。找不到类文件。我究竟做错了什么?

4

3 回答 3

4

在 Java 中,当您重构代码并将类移动到包中时,您必须将相应的文件 (HelloApplet.java) 移动到以您的包命名的子文件夹中。这意味着您的文件夹层次结构应该与您为应用程序选择的打包方案相匹配。这样,如果您的班级位于名为 的包a.b.c中,那么您的班级应该位于{source folder}\a\b\c文件夹中。

在您的示例中,您必须在文件夹中创建一个名为的新文件appletc:\temp5并将您的类移动到其中,然后编译并运行您的代码。

于 2013-10-05T19:57:18.980 回答
1

尝试code根据文档更改属性

<applet code = "applet.HelloApplet.class" width = 300 height = 300>

并将文件移动到文件HelloApplet.classapplet中。

于 2013-10-05T20:09:43.900 回答
0

正如 moghaddam 所说,当您在 Java 小程序/应用程序中指定一个包时,您需要在目录层次结构中反映该包。因此,如果你有一个applet包,目录树应该是(在你的情况下)

C:\
└── temp
    └── applet
        └── HelloApplet.class

从 temp 你应该能够执行appletviewer applet.HelloApplet

于 2013-10-06T07:43:58.133 回答