38節(jié)51節(jié),我們介紹的都是具體的容器類,上節(jié)我們提到,所有具體容器類其實(shí)都不是從頭構(gòu)建的,它們都繼承了一些抽象容器類。這些抽象類提供了容器接口的部分實(shí)現(xiàn),方便了Java具體容器類的實(shí)現(xiàn),理解它們有助于進(jìn)一步理解具體容器類。

此外,通過繼承抽象類,自定義的類也可以更為容易的實(shí)現(xiàn)容器接口。為什么需要實(shí)現(xiàn)容器接口呢?至少有兩個原因:

  • 容器類是一個大家庭,它們之間可以方便的協(xié)作,比如很多方法的參數(shù)和返回值都是容器接口對象,實(shí)現(xiàn)了容器接口,就可以方便的參與進(jìn)這種協(xié)作。

  • Java有一個類Collections,提供了很多針對容器接口的通用算法和功能,實(shí)現(xiàn)了容器接口,就可以直接利用Collections中的算法和功能。 

那,具體都有哪些抽象類?它們都提供了哪些基礎(chǔ)功能?如何進(jìn)行擴(kuò)展?下面就來探討這些問題。

我們先來看都有哪些抽象類,以及它們與之前介紹的容器類的關(guān)系。

網(wǎng)友評論