是这样的:
p1是个包,类Protection在编译以后应复制在文件夹p1中,因为java是用文件夹表示包的,即包是和文件夹对应的,你在编译时,编译器找不到包p1对应的文件夹p1,你把编译好的Protection.class复制到文件夹p1下,再编译类Protection2就不会出错了,同样的道理,在执行时,Protection2.class要放在文件夹p2中
p1是个包,类Protection在编译以后应复制在文件夹p1中,因为java是用文件夹表示包的,即包是和文件夹对应的,你在编译时,编译器找不到包p1对应的文件夹p1,你把编译好的Protection.class复制到文件夹p1下,再编译类Protection2就不会出错了,同样的道理,在执行时,Protection2.class要放在文件夹p2中
package p1;
public class Protection{
public Protection(){
}
}
放在c:\test\p1中
编译的class也在该文件夹中2、
package p2;
import p1.*;
public class Protection2 extends p1.Protection{
}
放在c:\test\p2中3、classpath加上:. 以及 c:\test