1、分析
是
HashSet
的子类,但内部使用了LinkedHashMap
2、继承体系
public class LinkedHashSet<E>
extends HashSet<E>
implements Set<E>, Cloneable, java.io.Serializable {
3、构造函数
public LinkedHashSet(int initialCapacity, float loadFactor) {
super(initialCapacity, loadFactor, true);
}
public LinkedHashSet(int initialCapacity) {
super(initialCapacity, .75f, true);
}
public LinkedHashSet() {
super(16, .75f, true);
}
//调用的父构造器:内部维护了一个LinkedHashMap
HashSet(int initialCapacity, float loadFactor, boolean dummy) {
map = new LinkedHashMap<>(initialCapacity, loadFactor);
}
4、其余的方法
LinkedHashMap
继承自HashMap
LinkedhashSet
继承自HashSet
在HashSet内部维持了一个HashMap对象;因此天生的LinkedHashSet内部维持了一个Hashmap对象,但是在实现时为LinkedhASHmAP