本文以Java10为背景,Java8到Java10只是增加了一些方法,总体结构没变。 
转载请注明:https://blog.csdn.net/ydonghao2/article/details/82221628
Tal.Yuan

在写了解集合之前,我们先了解一下在Java中(或者C++中也一样)的一种模式:

一般对interface 和 abstract class和 class之间的关系

        之所以这样设计是因为interface 一般起的作用是模板的作用,希望继承这个interface 的class都用这些方法;而abstract class的 则是对应一些默认方法,但是我觉得在Java8之后这种形式会减少,因为Java提供了interface可以实现default 方法的功能;最终的class就是最终的结果了。

        这样设计的第二个好处是可以更方便地使用Java的多态性。

        有了上面的思想之后,那我们可以按照这种方法看jdk提供的集合:先看所有jdk提供的interface ,再具体看每个interface 的实现,再看每个abstract class和class(以点破面的想法)。

        那么jdk提供了多少个集合相关的interface 呢?请看下图:

        然后我们需要根据上图一个一个接口去看他们的实现:

Iterator : 

身为一个集合:那么遍历集合中的元素是最基本的功能,JDK提供了一个iterator迭代器。

Map: 

Collectin:

待更。

 


本文转载:CSDN博客