回 帖 发 新 帖 刷新版面

主题:[讨论]package新问题

// c05:local:PackagedClass.java
package c05.local;
public class PackagedClass {
public PackagedClass() {
System.out.println(
"Creating a packaged class");
}
}

//c05:local:Foreign.java
import c05.local.*;
public class Foreign {
public static void main (String[] args) {
PackagedClass pc = new PackagedClass();
}

PackagedClass.java 和  Foreign.java同在d:\java\c05\local目录下
为什么编译不了,
D:\java\c05\local>javac Foreign.java
Foreign.java:6: 无法访问 PackagedClass
错误的类文件: .\PackagedClass.java
文件不包含类 PackagedClass
请删除该文件或确保该文件位于正确的类路径子目录中。
PackagedClass pc = new PackagedClass();
^
1 错误

     还有为什么
D:\java\c05>javac local\Foreign.java
D:\java>javac c05\local\Foreign.java
D:\>javac java\c05\local\Foreign.java
     这几句能编译成功,而

D:\java\c05\local>javac Foreign.java
编译不了
D:\>set classpath
classpath=.;D:\java\jdk1.6.0_02\lib;D:\java\jdk1.6.0_02\lib\tools.jar;D:\java


回复列表 (共2个回复)

沙发

You really need to understand Java package structure.

Here is a sample I wrote several years ago. It might help.

[url]http://bobcat.webappcabaret.net/javachina/jc/Cert/Package.htm[/url]

板凳

我知道不应该采用这样的结构,但我不懂其中原因
能不能解释一下我在一楼提得问题吗,
谢谢

我来回复

您尚未登录,请登录后再回复。点此登录或注册