2_Collection

2018-03-15  本文已影响0人  Michael_748c

(一)Collection分类体系

image.png

(二)List、Set、Queue子接口

1,Collection体系下面是Set、List、Queue子接口;


我们需要值没有重复的数组,所以有了Set;我们需要自动排序的Set,所以又有了TreeSet;

2,实现类

我们平常用的最多就是它们的实现类,有的实现类并不是直接继承这三个子接口,也不是只能继承其中的一个接口而已。

栗子1

根据源码,可以知道HashSet是Set接口的实现,同时它还继承了AbstractSet这个父类(该父类也实现了Set接口)

public class HashSet<E>
        extends AbstractSet<E>
        implements Set<E>, Cloneable, java.io.Serializable{
}

public abstract class AbstractSet<E> extends AbstractCollection<E> implements Set<E> {
}

栗子2

LinkedList类不仅实现了List接口,还实现了Deque接口(Deque接口是Queue接口的子接口)

public class LinkedList<E>
        extends AbstractSequentialList<E>
        implements List<E>, Deque<E>, Cloneable, java.io.Serializable{
}

常用实现类

我们常用的List集合有:Vector、LinkedList、ArrayList;
我们常用的Set集合有:HashSet、TreeSet;

不管是直接还是间接,Vector、LinkedList、ArrayList都实现了List接口;
HashSet、TreeSet都实现了Set接口;
Queue这里暂时不做阐述;

上一篇 下一篇

猜你喜欢

热点阅读