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

关于import 导入.*出错的问题
这里是TestPackageOne类的代码
----------------------------------------------------
package   cn.letiteasy.testPackage;

public   class   TestPackageOne   {
public   void   show()   {
System.out.println( "HelloWorld! ");
}
}
----------------------------------------------------
这里是TestPackageFour类的代码
----------------------------------------------------
import   cn.letiteasy.testPackage.*;

public   class   TestPackageFour   {
public   static   void   main   (String   args[])   {
TestPackageOne   a   =   new   TestPackageOne();
a.show();
}
}
----------------------------------------------------
我先把TestPackageOne.class放到了对应的目录下了
现在我的文件结构是
root\
root\TestPackageOne.java
root\TestPackageFour.java
root\cn\letiteasy\testPackage\TestPackageOne.class
但是我编译TestPackageFour.java的时候出现如下错误:
----------------------------------------------------
错误的类文件:   d:\java\class\TestPackageOne.java
文件不包含类   TestPackageOne
请删除该文件或确保该文件位于正确的类路径子目录中。
                                TestPackageOne   a   =   new   TestPackageOne();
                                ^
1   错误
----------------------------------------------------
但是要是我把   TestPackageFour.java   中的
import   cn.letiteasy.testPackage.*;
改成
import   cn.letiteasy.testPackage.TestPackageOne;
就可以通过了
请大侠指点迷津啊~

------解决方案--------------------
把 root\TestPackageOne.java 这个java文件放到 别的目录下就可以了

因为在编译的时候会优先找到这个个java文件 编译 然后因为这个没有包结构 所以报错

import cn.letiteasy.testPackage.TestPackageOne; 指明了是包里面的类

所以不会编译这个java文件