关于java中package的问题
打了一个名为 father的包:
package edu.bnu.angle.father;
public class Father{
private int x=8;
public void putout(String s){
System.out.println(s);
}
public int getX(){
return x;
}
}
打了一个son的包:
package edu.bnu.angle.son;
import edu.bnu.wangdan.father.*;
public class Son extends Father{
float w=100f;
}
主函数则在angle包里:
package edu.bnu.angle;
import edu.bnu.angle.father.*;
import edu.bnu.angle.son.*;
public class Inher{
public static void main(String[] args){
Son abc=new Son();
System.out.println(abc.getX());
abc.putout("hello");
}
}
这些相应的包都在相应的文件夹下 可是在运行Inher.java 的时候,提示edu.bnu.angle.father和edu.bnu.angle.son包不存在,还有找不到符号son 这是为什么呢?
求高手指教,谢谢啦!
------解决方案--------------------把import edu.bnu.angle.father.*;
import edu.bnu.angle.son.*;
两句后面的".*"去掉,再试试看.
------解决方案--------------------import edu.bnu.wangdan.father.*;
这个包名对了吗?
------解决方案--------------------你是在开发工具里写的code,自己建文件夹写的?
在cmd下执行的命令?
有没编译Father and Son 2个类?
具体错误信息帖出来。
------解决方案--------------------
我在cmd下测试了,用javac -d . Father.java 这样把三个文件编译,运行时加上包名:
java edu.bnu.angle.Inher 可以运行。
(把 import edu.bnu.wangdan.father.*; 改成import edu.bnu.angle.father.*;)
结果:
8
hello
------解决方案--------------------首先一个问题
import edu.bnu.wangdan.father.*;
这个包不知道哪来的。
然后应该是另外两个类没有保存编译。所以才会报出不存在的错误。