`
androidssh
  • 浏览: 112133 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

LinkedHashSet源码带来的思考

    博客分类:
  • java
阅读更多
1、LinkedHashSet具有可预知迭代顺序的Set接口的哈希表和链接列表实现。此实现与HashSet的不同之外在于,后者维护着一个运行于所有条目的双重链接列表。
2、LinkedHashSet源码一部分
    public class LinkedHashSet<E>extends HashSet<E>implements Set<E>, Cloneable,      Serializable
3、当父类实现了某一接口,子类还需不需显式地写出也实现这一接口
    LinkedHashSet已继承了HashSet,即是HashSet的子类,而HashSet实现了Set接口, 那么子类LinkedHashSet还需不需要再写实现Set接口呢?
4、综上就有了以下的思考或验证
a、只要父类实现了某个接口, 子类可以不再显式地写,JVM不会报错,这个已验证。
b、Java标准库里这样写是由于生成JavaDoc文档的考虑,因为javadoc命令为了收集继承信息肯定得要迭代遍历了,而且为了收集接口实现信息若遍历的话,运算量相当地大,于是Sun就偷懒了?还是Sun错了,不得而知。
c、为了提高代码的可读性,如果是的话,可想而知Sun是多么注重代码的可读性。
分享到:
评论

相关推荐

    java集合-LinkedHashSet的使用

    LinkedHashSet 是 Java 中的一个集合类,它是 HashSet 的子类,同时也实现了 Set 接口。与 HashSet 不同的是,LinkedHashSet 保留了元素插入的顺序,并且具有 HashSet 的快速查找特性。下面是关于 LinkedHashSet 的...

    HashSet、LInkedHashSet的使用和特点

    HashSet、LInkedHashSet的使用和特点

    List 去重的6种方法(contains、迭代、hashSet、treeSet、linkedHashSet、stream)

    从代码和执行结果可以看出,LinkedHashSet 是到目前为止,实现比较简单,且最终生成的新集合与原集合顺序保持一致的实现方法 6:Stream去重(有序) Stream 实现去重功能和其他方法不同的是,它不用新创建集合,使用...

    计算机后端-Java-Java核心基础-第24章 集合01 24. LinkedHashSet的使用.avi

    计算机后端-Java-Java核心基础-第24章 集合01 24. LinkedHashSet的使用.avi

    HashSet,TreeSet和LinkedHashSet的区别1

    简单的说,HashSet集合判断两个元素相等的标准是两个对象通过equals方法比较相等,并且两个对象的hashCode()方法返回值相 等注意,如果要把一个对

    java8源码-JavaRobot:Java学习笔记,JavaLearningNote

    java8 源码 学习笔记(持续更新中) 所有文章均同步发布到微信公众号...LinkedHashSet TreeSet HashSet Concurrent源码系列 待完善 JVM(Java虚拟机) 类加载 垃圾回收算法 JavaConcurrent(Java并发系列) 【Java并发系列】

    javabitset源码-JerrySoundCode:杰瑞声码

    bitset源码Java源码分析 基础集合列表 ArrayList (done) Vector (done) LinkedList (done) Stack (done) ReferenceQueue (done) ArrayDeque (done) Set HashSet (done) TreeSet (done) LinkedHashSet (done) BitSet ...

    尚硅谷-深入Java集合5:LinkedHashSet的实现原理.pdf

    ·企业级笔试面试题目深入源码级讲解,拒绝死记硬背 4.代码量更大、案例更丰富、更贴近实战: ·Java语言基础阶段:12720行代码,Java语言高级阶段:11684行代码 ·课堂实战项目3套,课后实战项目2套 ·近百道企业...

    Java—Set集合详解(HashSet/LinkedHashSet/TreeSet/EnumSet)

    Set集合介绍 Set集合的概念   Set集合类似于一个容器,程序把很多对象保存到Set集合中,Set集合对添加顺序不记录,当有重复的对象保存到Set集合时,不会新增后加的重复对象。 Set集合的特点 Set集合无重复元素,...

    ritelinked:LinkedHashMap和LinkedHashSet

    提供了LinkedHashMap和LinkedHashSet更多最新版本。 您可以在std或no_std环境中轻松使用它。 一些实用的功能组合,支持,帮助您更好地将其嵌入到现有代码: serde , inline-more等。特别是,它使用griddle在默认...

    飞秋java源码-interviewNote:面试笔记

    源码分析:ArrayList、Vector、LinkedList、HashMap、ConcurrentHashMap、HashSet、LinkedHashSet and LinkedHashMap Java 并发编程  &gt; ​ 线程机制、线程通信、J.U.C组件、JMM、线程安全、锁优化 Java I/O  磁盘...

    RiteLinked - Rust 中的 LinkedHashMap 和 LinkedHashSet

    RiteLinked——类似HashMap的容器,以用户可控的顺序保存它们的键值对RiteLinked提供了LinkedHashMap和LinkedHashSet更多最新版本。您可以在std或no_std环境中轻松使用它。一些实用的功能组合,支持,帮助您更好地将...

    java8集合源码分析-CollectionDemo:自己复习集合框架时候的例子

    集合源码分析 java基础复习 [TOC] 一、集合 1.Iterator 2.Collection 2.1 List---&gt;有序、有索引、元素可重复 1.ArrayList: 底层是数组结构、查询快、增删慢、不同步 添加第一个元素的时候,创建默认个数是10个,...

    java8集合源码分析-LearningNotes:Java笔记

    源码分析:ArrayList、Vector、LinkedList、HashMap、ConcurrentHashMap、HashSet、LinkedHashSet and LinkedHashMap 线程状态、线程机制、线程通信、J.U.C 组件、JMM、线程安全、锁优化 磁盘操作、字节操作、字符...

    Java数据结构--13.Java8数据结构TreeSet.pdf

    Java数据结构--13.Java8数据结构TreeSet 前⾔ ,上⼀篇中对 Set 接⼝最终实现类 HashSet 与 LinkedHashSet 做了介绍与分析,本篇将对另⼀种 Set 接⼝的最终实现类 TreeSet 进⾏ 介绍与分析。 先来看下 TreeSet 完整...

    Java集合框架Set接口.pdf

    Set接口的实现类包括HashSet、LinkedHashSet和TreeSet。 HashSet是基于哈希表实现的Set集合,它不保证集合中元素的顺序。由于哈希表的实现机制,HashSet的添加、删除和查找操作都具有很好的性能,时间复杂度为O(1)。...

    day016-list和set笔记以及代码.zip

    总结一下: ArrayList:如果是查改多,用ArrayList LinkedList:如果是增删插多,用LinkedList Vector:如果是有线程安全要求用...LinkedHashSet:如果需要元素不重复,并且,有存入和取出顺序要求用LinkedHashSet

    Java集合框架完整说明便于了解集合

    java集合在日常开发中经常用到,对基础的掌握尤其重要,其中List,Set,Map的作用以及使用的场景和分类描述,其中Arraylist 与 LinkedList 区别,HashSet与TreeSet与LinkedHashSet对⽐,LinkedHashMap和HashMap,...

    java中set、list和map的使用方法实例

    // HashSet不保证迭代顺序, LinkedHashSet按照元素插入的顺序迭代. // 学习List对象容器的使用 // List容器中的对象允许重复 // 常用的list接口的实现类有ArrayList和LinkedList // 学习map对象容器的使用 // map...

Global site tag (gtag.js) - Google Analytics