ArrayList繼承了AbstractList為何還要實現List接口


ArrayList繼承了AbstractList為何還要實現List接口?

相關的問題:

  • Vector既然繼承了AbstractList為啥還要實現List接口

  • HashMap繼承了AbstractMap為何還要實現Map接口?

  • HashSet繼承了AbstractSet為何還要實現Set接口?

看了網上很多回答 總結一下:

  • class.getinterfaces()返回不同的結果,方便基於List接口的代理

  • 增加可閱讀性,顯示的實現List 接口

  • AbstractList 已經大多方法都已經實現,ArrayList可以不做任何事 就可以使用,為了強制ArrayList重寫代碼

    所以實現了List接口

  • 作者犯了錯誤....

都挺有道理,最后在StackOverflow 看到答案. 原文,竟然真的是寫錯了, 回復者自稱問過 java collection 的作者 Josh ,並得到上述答案....,挺有意思,至於后來更新為什么沒有去掉,可能真的覺得:"嗯?!,挺有道理!"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM