Collection家族成员

Collection家族成员

        在我们编程中使用比较多的对象是集合,不得不承认我只仅限于了解几个常用的集合,比如:ArrayList,HashMap等。要是了解集合里面实现的细节,我相信会更加利于我们编写高效的代码。

        我私自把实现(impletements)定义为徒弟,把继承(extends)定义为后代。徒弟是指学习祖先的某些能力,后代是遗传祖先的某些特性和能力。这样不管是徒弟还是后代都拥有祖先的一些能力。Collection家族祖先师承Iterable,所以家族后代都有Iterable的能力——迭代。

        Collection的第一代后代:Set、List、Queue;

                            第一代徒弟:AbstractCollection。

        set家:SortedSet:NavigableSet。                           

        List家:全是徒弟。

        Queue家:DeQueue。

        AbstractCollection家: AbstractQueue: PriorityQueue;

                                                ArrayQueue;

                                                AbstractList:  ArrayList;  

                                                                        AbstractSequentiaList:LinkedList;

                                                                        SubList: RandomAccessSubList;

                                                                        Vector:Stack;

                                                AbstractSet:HashSet:LinkedHashSet;

                                                TreeSet;

                                                EnumSet:RegularEnumSet;

                                                                    JumboEnumSet。

        师承关系比较复杂,直接看UML图:

pic_java_src_collection

        今天就到这里,为了生成这张图,缕清关系,可费劲,下篇将进一步介绍集合。

转载于:https://my.oschina.net/u/1257439/blog/680201

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109003.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 加工机械双探头高频读写器CK-FR102AN用户开发手册「建议收藏」

    加工机械双探头高频读写器CK-FR102AN用户开发手册「建议收藏」加工机械双探头高频读写器CK-FR102AN用户开发手册CK-FR102AN系列双探头高频读写器是一款基于射频识别技术的高频RFID标签读卡器,读卡器工作频率为13.56MHZ,支持对I-CODE2、I-CODESLI等符合ISO15693国际标准协议格式标签的读取。FR102一款轻量型RFID读头,采用菲尼克斯定制外壳,体积小、自带工控箱安装滑轨卡扣,易安装。同时支持两个探头工作,通过电缆拉长的探头在加工机械应用场景上可以灵活安装,支持姆龙plc的ethernetip通讯。读写器选型型号

    2022年6月22日
    29
  • 什么是java?为什么要学Java? 学Java有什么用?

    什么是java?为什么要学Java? 学Java有什么用?肯定会有许多人或多或少都和我一样,当偶然在电视上看到程序员对着电脑飞快敲下一串代码,不禁为他们发出惊叹,想象着有一天自己也能这样。是的,有一天你也能这样!因为我已经实现了!下面我们来看看到底什么是JAVA?为什么要学习,学习了有什么用?先给大家看一下19年计算机语言排行什么是java?为什么要学Java?学Java有什么用?1.什么是JavaJava它就是一种编程语言,别的编程语言能干的事,它都能干。2.编程语言这么多,我为什么选择Java呢?简单易学首先Java是一个面向对象的编程语言

    2022年7月7日
    27
  • 一位华裔复活了美国奥数国家队:掌舵 6 年 4 次夺冠,打破中国队“垄断”

    一位华裔复活了美国奥数国家队:掌舵 6 年 4 次夺冠,打破中国队“垄断”来源:量子位罗博深,一个复活了美国奥数国家队的男人。△图源:QuantaMagazine在他的执教下,美国奥数国家队迎来了黄金时期。过去六年中,共获得了4个国际奥数竞赛(IMO)第一名(…

    2022年6月20日
    47
  • asList存在的问题

    asList存在的问题1.避开基本类型数组转换列表陷阱问题实例:publicclassClient{publicstaticvoidmain(String[]args){int[]data={1,2,3,4,5};Listlist=Arrays.asList(data);System.out.println(li

    2025年5月26日
    2
  • exlipse同时操作多行。比如同时在多行同列输入相同的文字

    exlipse同时操作多行。比如同时在多行同列输入相同的文字

    2021年7月15日
    87
  • PXE启动原理以及与普通Linux启动的对比

    PXE启动原理以及与普通Linux启动的对比关于PXE部署的详细配置的文章已经有不少了,这篇文章主要讲一下PXE启动的原理以及PXE启动和普通Linux启动的对比。

    2022年6月29日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号