新集合整体概述

新集合考虑到“容纳自己对象”的问题,并将其分割成两个明确的概念:

(1)集合(Collection):一组单独的元素,通常应用了某种规则。在这里,一个List(列表)必须按特定的顺序容纳元素, 而一个Set(集)不可包含任何重复的元素。

(2)映射(Map):一系列“键-值”对。

以下这张图有助于大家理解新集合,其中实际只有三个集合组件:Map, List和Set。而且每个组件实际只有两、三种实现方式,而且通常只有一种特别好的方式,只要看出这点,集合就不会再令人生畏了。

虚线框代表“接口”,点线框代表“抽象”类,而实线框代表普通类。点线箭头表示一个特定的类准备实现一个接口,双线箭头表示一个类可以生成箭头指向的那个类的对象。例如,任何集合都可以生成一个反复器(Iterator),而一个列表可以生成一个ListIterator(以及原始的反覆期,因为列表时从集合继承的)。

在类的分级结构中,可看到大量以“Abstract”开头的类,它们实际时一些工具,用于“部分”实现一个特定的接口。举个例子来说,加入想生成自己的Set,就不是从Set接口开始,然后自行实现所有方法。相反,我们可以从AbstractSet继承,只需极少的工作即可得到自己的心累。但是,新集合库任然包含了足够的功能,可满足我们几乎所有需求。所以考虑到我们的目的,可忽略所有以“Abstract”开头的类。

在观看这张示意图时,真正需要关心的只有位于最顶部的“接口”以及普通类。通常需要生成实际的一个对象,将其上溯造型为对应的接口。以后便可在代码的任何地方使用那个接口。(例程序:SimpleCollection.java)
 

猜你喜欢

转载自blog.csdn.net/qq_37003223/article/details/81167266