我看到它LinkedHashSet
扩展了HashSet
,我知道它保持秩序。
但是,通过检查 JDK 中的代码,似乎LinkedHashSet
只包含构造函数而没有实现,所以我猜所有的逻辑都发生在HashSet
?
如果这是正确的,为什么要这样设计?这似乎很混乱。
编辑:这个问题有一个不幸的错误。我写了HashMap
andLinkedHashMap
而不是HashSet
and LinkedHashSet
。如果可能的话,我解决了这个问题。
另外,我很感兴趣为什么 Java 设计者选择这样实现它。