转自:http://zhidao.baidu.com/link?url=Oi_HJaWXjR84zPwVABGv2fyySJJclG8zS6-rwE7M5F7zrq2OG2XkMiaJyse0fimH-OQIL8XgsCRKcvllWFnK7_
List是一个接口,而ArrayList 是一个类。 ArrayList 继承并实现了List。
List list = new ArrayList();这句创建了一个ArrayList的对象后把上溯到了List。此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了。而ArrayList list=new ArrayList();创建一对象则保留了ArrayList的所有属性。为什么一般都使用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢?