如题,有A,B两个类,如果去掉package,在当前目录下可成功编译B;如加上则出现
cannot resolve symbol
symbol : class A
错误。如何解决请指教。
package hello;
public class A {
int a=0;
public int getA(){
return this.a;
}
public void setA(int a){
this.a = a;
}
}
-----------------
package hello;
public class B {
A a = new A();
}
cannot resolve symbol
symbol : class A
错误。如何解决请指教。
package hello;
public class A {
int a=0;
public int getA(){
return this.a;
}
public void setA(int a){
this.a = a;
}
}
-----------------
package hello;
public class B {
A a = new A();
}
+--hello
+----A.java
+----B.java
最多把A加到环境变量里。
如果你用命令行编译,则会有问题
在hello目录下执行javac *.java就可以
执行的时候跑到hello目录的外面,执行java -cp . hello.B
在hello目录下执行javac *.java就可以
执行的时候跑到hello目录的外面,执行java -cp . hello.B"上面这段说明有2个问题:第一:如果在hello目录下面还有子目录,里面有其他类文件的时候,怎么办?如果用javac *.java根本不行,报告说找不到下面的子目录的类。第二:执行的时候应该是在hello的上级目录输入:java hello.B。