List和ArrayList的区别

来源:百度知道 编辑:UC知道 时间:2024/09/24 18:20:41
有什么区别呢?
为什么会有如下的写法呢?
List list=new ArrayList();
Set set=new HashSet();
之类的写法啊?

List是一个接口,而ArrayList是一个类,它实现了List接口。
所以List不能被构造,List list=new List()这种写法是错误的,而ArrayList就可以被构造。
List list = new ArrayList();这句创建了一个ArrayList的对象后把向上转型成了List。此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了。
而ArrayList list=new ArrayList();创建一对象则保留了ArrayList的所有属性。

List是一个接口,是Collection接口的一个子接口。是一个有序的集合。而ArrayList是List的一个实现类,可以实现数组大小的可变,可以很方便的进行增加和删减数组内元素的操作。

List list=new ArrayList();这种形式成为向上转型,ArrayList实现了List接口,可以看成是从List继承而来,一个子类的对象可以指向它父类。比如,狗从动物继承而来,狗是一只动物,所以狗的对象可以当作一只普通的动物来看待。

List是一个接口,是Collection接口的一个子接口。是一个有序的集合。而ArrayList是List的一个实现类,可以实现数组大小的可变,可以很方便的进行增加和删减数组内元素的操作。

List list=new ArrayList();这种形式成为向上转型,ArrayList实现了List接口,可以看成是从List继承而来,一个子类的对象可以指向它父类。比如,狗从动物继承而来,狗是一只动物,所以狗的对象可以当作一只普通的动物来看待。

List是一个接口,是Collection接口的一个子接口。是一个有序的集合。而ArrayList是List的一个实现类,可以实现数组大小的可变,可以很方便的进行增加和删减数组内元素的操作。

List list=new ArrayList();这种形式成为向上转型,ArrayList实现了List接口,可以看成是从List继承而来,一个子类的对象可以指向它父类。比如,狗从动物继承而来,狗是一只动物,所以狗的对象可以当作一只普通的动物来