关键看你的A.java这个类的可见范围了
如果你的A是
class A{...}
那么,可能就是这种情况了如果是
public class A{...}的话应该就没有问题了
去看看public protected private friendly的区别就知道了

解决方案 »

  1.   

    关键看你的A.java这个类的可见范围了
    如果你的A是
    class A{...}
    那么,可能就是这种情况了如果是
    public class A{...}的话应该就没有问题了
    去看看public protected private friendly的区别就知道了
      

  2.   

    Java的类最好是加上package,你的A.java有时候javac不知道要怎么找
    只要把你的A.java也加上package就行了
      

  3.   

    试一下:
    javac A.java -d .
    javac AA.java -d .
      

  4.   

    to: nc201(Bricklayer) 
    当然是public了,不过还是不行的.to:ChDw(米) 
    javac是根据classpath来找的.
    其实根据classpath后面的路径来建立路径参考表.会根据-classpath去寻找所需要的类,如果在其中一个目录下没有找到,就继续寻找下一个,如果还是没有找到就会出错了.找到的话,就会比较.java和.class谁最新的,来决定是否要编译.java文件了.to:yuanmeng163(今天我有空) 
    是一样的错误了,"-d ."应该只是把编译后的class文件放在当前目录下,本质上应该没有什么变化的.其实大家可以试一下,环境是不难做出来的.
    很奇怪了.
    一下子出现这个问题,倒让我莫名惊诧了!
      

  5.   

    to: ChDw(米)
    所以我认为javac应该能找到的.
    还有为什么去掉package aa;就会编译通过呢?
    难道package.......?
      

  6.   

    是这样的:
    A类没有包语句,因此编译后就成为了无名包的一个类。而类AA是有包语句的,和类A不是一个包里的类,而处在不同包里的类互相使用时要用import语句,如果不用import,就认为是同一个包里的类,会去同一包里去找!
      

  7.   

    请教yuanmeng163(今天我有空)
    那其他包里面的类,如何访问一个"无名包的一个类"呢?
    怎样把他import进来呢?
      

  8.   

    无名包的类别的包是没法import进来的。
      

  9.   

    那么怎么访问它呢?
    请问yuanmeng163(今天我有空)?
      

  10.   

    如果是无名包的类只有无名包的类才能访问啊。就你这个例子来说,有两个办法:
    1。AA类也去掉包语句,使它也成为无名包的类,就与A处在同一个包里了;
    2。给A类加上包语句,如package b;然后再AA类中显示的导入:import b.A;