关于package和import的疑问
假设:
当前文件夹下有一个abc文件夹,abc下面又有aaa,bbb两个文件夹,这样的目录结构
在aaa文件夹下有A.java,代码如下:
package abc.aaa;
public class A
{
public A()
{
System.out.println("A");
}
}
同样,在bbb文件夹下有B.java,代码也类似:
package abc.bbb;
public class B
{
public B()
{
System.out.println("B");
}
}
在当前文件夹下有Test.java,代码如下:
import abc.aaa.A;
import abc.bbb.B;
public class Test
{
public static void main(String[] args)
{
new A();
new B();
}
}
这样没有问题,可以访问
我想请教一下,
怎样在不设classpath的情况下,如何写package,import语句让A,B类里面相互访问?
而且在abc文件中怎样写才能正常访问到A,B类?
前提是不设classpath的情况下
------解决方案--------------------之所以你能够这样访问,是因为classpath设置了当前路径,即一个点。这样在虚拟机会以当前路径为起始点搜索abc.aaa及abc.bbb的包结构
如果不打算写classpath,那么可以这样调用
java -cp . Test
------解决方案--------------------加前序就可以了吧,如:
new abc.aaa.A();
new abc.aaa.B();