日期:2014-05-20  浏览次数:20681 次

JAVA编译时的路径问题??
假设A.java中有一个类AAA,即文件名与类名不相同!
A.java中引用了class B。在A.java的同一目录下已经存在B.class,还存在B.java。
那么在生成A.java的字节码AAA.class时直接调用B.class,而不再考虑重新编译B.java!

但如果删除B.java文件将A.java改成B.java,那么在编译生成AAA.class文件时又不会直接调用B.class,而是重新编译B.java,于是提示class B找不到!

我不明白的是为什么第一种情况直接使用B.class,第二种情况又不用B.class而是重新根据B.java来生成??

望高手指点,多谢!!

------解决方案--------------------
因为你改了A.java,所有A.java会重新编译,里面包含的AAA也会重新编译,但是找不到B.java源文件,所以报错