Java 集合vs数组列表

Java 集合vs数组列表,java,Java,我注意到上面的代码实际上与ArrayList collection=new ArrayList相同 这是否意味着我可以有任何名称来替换第一个集合/ArrayList Collection<string> collection = new ArrayList<string>(); 谢谢 之所以能够这样做,是因为ArrayList实现了集合 -->ArrayList实现接口集合,因此可以将集合强制转换为集合 看 本教程介绍如何使用接口集合是一个接口,而ArrayList是集

我注意到上面的代码实际上与ArrayList collection=new ArrayList相同

这是否意味着我可以有任何名称来替换第一个集合/ArrayList

Collection<string> collection = new ArrayList<string>();

谢谢

之所以能够这样做,是因为ArrayList实现了集合

-->

ArrayList实现接口集合,因此可以将集合强制转换为集合

本教程介绍如何使用接口集合是一个接口,而ArrayList是集合的实现之一


因为ArrayList->List->Collection,所以可以将ArrayList实例声明为Collection、List和ArrayList。其他类型不起作用。

我希望这能帮助您理解,在初始化对象并存储其对类型变量的引用时,为什么要使用接口类型而不是具体的实现。

对于实现集合的ArrayList,您可以这样做。

集合是ArrayList实现该接口的接口。它实际上并不相同。这完全不同。
anyname<string> collection = new ArrayList<string>();
Class ArrayList<E>

java.lang.Object
  java.util.AbstractCollection<E>
    java.util.AbstractList<E>
      java.util.ArrayList<E>

All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess