本人正在在学习java,看的是Thinking in java 这本书。在学习过程中遇到了点迷惑,请各位大虾指点迷津。下面是我写的一道程序:
//:javastudy:chapter5:ArrayList.java
//create an ArrayList object without exiplicitly import java.util.*/**exercise 1 in the chapter 5 of Thinking in Java
 * @version 1.0
 * Date 2010/07/19
*/package chapter5;public class ArrayList {
ArrayList(){
System.out.println("I am an ArrayList!");
}
}///:~
//:javastudy:chapter5:Test.javaimport chapter5.*;public class Test {
  public static void main(String[] args){
System.out.println("inside main()");
ArrayList a = new ArrayList();
  }
}上述两个java文件(ArrayList.java和Test.java)都放在D:\javastudy\chapter5目录下面运行结果如下:D:\javastudy\chapter5>javac ArrayList.javaD:\javastudy\chapter5>javac Test.java
Test.java:6: 无法访问 ArrayList
错误的类文件: .\ArrayList.class
类文件包含错误的类: chapter5.ArrayList
请删除该文件或确保该文件位于正确的类路径子目录中。
        ArrayList a = new ArrayList();
        ^
1 错误但是当我注释掉ArrayList.java文件中的package那行和Test.java文件中的import那行后,程序能正确运行并得到正确结果。不知道为什么会这样,请大虾们给个详细的解释,谢谢了~~ps:电脑上环境变量CLASSPATH的设置如下:CLASSPATH = .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;D:\javastudy