集合继承抽象类,实现接口问题

silaslili 2017-11-02 10:28:49
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable

在ArrayList的声明中,其继承了抽象类AbstractList,该抽象类已经实现了List<E>接口,所以 ArrayList<E>也就等于实现了List<E>接口。
那么为什么在声明中还需要再次声明实现List<E>接口??????????
...全文
455 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
个人见解就是,这个老外是不是亲自问过,我们不知道,我们更不知道这个老外是不是也喜欢吹牛逼。。。。。。。
  • 打赏
  • 举报
回复
I've asked Josh Bloch, and he informs me that it was a mistake. He used to think, long ago, that there was some value in it, but he since "saw the light". Clearly JDK maintainers haven't considered this to be worth backing out later
silaslili 2017-11-06
  • 打赏
  • 举报
回复
引用 7 楼 sunle818 的回复:
当然是为了可维护性啊,这不就是面向对象的思维吗, 1. 增加可读性,可以清晰看到类的主要实现接口。 2. 降低维护成本,如果哪天AbstractList不在实现List接口,我也不会受到影响。 比如说,你老爸可以继承你爷爷一套房子, 你也有权继承你老爸的房子,也有权继承你爷爷的房子。这些都是资产。 但是,假如你老爸因为做生意亏了N钱,把自己的房子卖给了银行,还欠一屁股债。 那么这时候,你爷爷害死不可能把他的那一套房子再搭进去了,这时候你就只能直接继承你爷爷的房子,而不是你老爸继承过来再给你。 这里ArrayList差不多一个意思吧,如果哪天你的AbstractList报废了,那么至少你还有得LIST用。
前辈你看了前面1楼的答案没有?你看下你怎么看?
silaslili 2017-11-06
  • 打赏
  • 举报
回复
引用 1 楼 yuxiangaaaaa 的回复:
http://www.cnblogs.com/bluejavababy/p/4320545.html这里有你要的答案
其实我觉得你说的那个答案很有道理,你发现一个问题没有?其实你还发现一个问题没有,我还搜索到一个答案,是一个stackoverflow上的,一个作者说他联系过这部分源码的作者,作者的回答是it‘s a mistake.
引用 3 楼 yiran__fantasy 的回复:
终于知道了 谢谢
哈哈你知道什么了?
  • 打赏
  • 举报
回复
当然是为了可维护性啊,这不就是面向对象的思维吗, 1. 增加可读性,可以清晰看到类的主要实现接口。 2. 降低维护成本,如果哪天AbstractList不在实现List接口,我也不会受到影响。 比如说,你老爸可以继承你爷爷一套房子, 你也有权继承你老爸的房子,也有权继承你爷爷的房子。这些都是资产。 但是,假如你老爸因为做生意亏了N钱,把自己的房子卖给了银行,还欠一屁股债。 那么这时候,你爷爷害死不可能把他的那一套房子再搭进去了,这时候你就只能直接继承你爷爷的房子,而不是你老爸继承过来再给你。 这里ArrayList差不多一个意思吧,如果哪天你的AbstractList报废了,那么至少你还有得LIST用。
fcyh 2017-11-06
  • 打赏
  • 举报
回复
体系结构决定的
Lairai 2017-11-05
  • 打赏
  • 举报
回复
体系结构决定的
Rookiekk 2017-11-05
  • 打赏
  • 举报
回复
多查查资料会有的
javafor点com 2017-11-02
  • 打赏
  • 举报
回复
这里有一篇 关于 ArrayList 的源码 你可以学下 go javafor.com
自由自在_Yu 2017-11-02
  • 打赏
  • 举报
回复
yrftc 2017-11-02
  • 打赏
  • 举报
回复
终于知道了 谢谢

62,624

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧