大哥们,请问一个问题,我先建了一个程序库
package haha.hoho.hehe;
class Wei {
public void w() {
System.out.println("非公共的那个类");
}
}
public class He {
public void h() {
System.out.println("我来也哈哈哈哈哈哈哈哈");
}
}然后我在DOS环境下用javac -d E:\ He.java 编译通过了。
然后我建立了另一个.java文件,里面是:
import haha.hoho.hehe.*;
public class A {
public static void main(String[] args) {
Wei i=new Wei();
i.w();
}
}
然后我在DOS环境下用javac A.java 编译结果报错,请问是怎么回事,应该怎么解决呢?
package haha.hoho.hehe;
class Wei {
public void w() {
System.out.println("非公共的那个类");
}
}
public class He {
public void h() {
System.out.println("我来也哈哈哈哈哈哈哈哈");
}
}然后我在DOS环境下用javac -d E:\ He.java 编译通过了。
然后我建立了另一个.java文件,里面是:
import haha.hoho.hehe.*;
public class A {
public static void main(String[] args) {
Wei i=new Wei();
i.w();
}
}
然后我在DOS环境下用javac A.java 编译结果报错,请问是怎么回事,应该怎么解决呢?
只能导入haha.hoho.hehe包中的public类 class Wei不能导入 所以在 Wei i=new Wei();时找不到Wei类而报错
第一,把他们放到同一个类中
第二,把类A声明为类Wei的子类
第三,在公共类He中定义一个public类型的方法来访问A
每个.java文件只能有一个是public class,那我同一个.java文件中的其他class在编译以后,又怎么能在另一个.java中被访问呢,这也是我迟迟没有结贴的原因.