第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么ArrayList繼承了AbstractList還要實現(xiàn)List接口

為什么ArrayList繼承了AbstractList還要實現(xiàn)List接口

紫衣仙女 2018-07-14 10:59:25
為什么ArrayList繼承AbstractList之后還需要實現(xiàn)List接口,(AbstractList已經(jīng)實現(xiàn)了List接口)
查看完整描述

4 回答

?
猛跑小豬

TA貢獻(xiàn)1858條經(jīng)驗 獲得超8個贊

因為:

1、AbstractList實現(xiàn)了List接口,在其中為List接口的所有方法都給了一個默認(rèn)實現(xiàn)

2、ArrayList繼承AbstractList之后,本質(zhì)上說,可以不做任何操作(因為父類已經(jīng)替它做好了)

3、但是為了讓ArrayList必須重新實現(xiàn)List中所有方法,所以ArrayList必須直接實現(xiàn)List接口(或重寫ArrayList中所有方法),顯然,JDK編寫人員選擇了直接實現(xiàn)List接口。

4、保證所有的List實現(xiàn)類都直接實現(xiàn)List中的方法,而不是繼承List的其他實現(xiàn)類(保證子類更純正)

5、其他……


查看完整回答
反對 回復(fù) 2018-07-14
?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗 獲得超6個贊

漲姿勢,可能對抽象類和接口之間的關(guān)系還停留在理論階段,看著挺迷糊的,多謝

查看完整回答
反對 回復(fù) 2018-07-14
?
ABOUTYOU

TA貢獻(xiàn)1812條經(jīng)驗 獲得超5個贊

從語義實現(xiàn)上冗余了,但是從設(shè)計上是合理的,對比下面對對象設(shè)計,抽象類和接口的定義,繼承和實現(xiàn)的定義。

ArrayList作為一個對象,首先是要符合List接口定義的,然后我們基于開閉原則,將List的一些固定行為進(jìn)行抽象,所以描述ArrayList對象是實現(xiàn)了List接口,繼承了AbstractList里面的方法。更細(xì)致的可以參考下API里面對三個類的描述。


查看完整回答
反對 回復(fù) 2018-07-14
?
qq_星河k_0

TA貢獻(xiàn)4條經(jīng)驗 獲得超2個贊

增加ArrayList的適應(yīng)性和簡單性,繼承的關(guān)系,往往導(dǎo)致耦合度高,難以擴(kuò)展,繼承了抽象類,就一定要復(fù)寫所有的方法,工作量大,某些工作甚至無效。如果實現(xiàn)了接口List,就相當(dāng)簡潔,實用。抽象類的

抽象類的子類,相當(dāng)于模板模式,我這么理解的對不對?

查看完整回答
反對 回復(fù) 2018-07-15
  • 4 回答
  • 0 關(guān)注
  • 2043 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號