返回信息流RT,
拿ArrayList来说吧:
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>
为什么会这样。父类作为抽象类,已经包裹了接口方法,为什么子类还要去implements。而不是override父类的方法呢?
这是一条镜像帖。来源:北邮人论坛 / java / #36175同步于 2014/11/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
[问题]为什么JAVA的源码中,已经继承了抽象类,还要实现接口呢
psyduck
2014/11/13镜像同步23 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
[ema11]这个解释有些靠谱的感觉。但是从接口—》抽象类-》实现的设计思想来说,又有哪里怪怪的[ema38]
【 在 nuanyangyang 的大作中提到: 】
: 不知道。猜以前的版本并没有AbstractList,是后来才引入的。引入之前ArrayList早就实现List了。
【 在 psyduck 的大作中提到: 】
: 这个解释有些靠谱的感觉。但是从接口—》抽象类-》实现的设计思想来说,又有哪里怪怪的
欢迎来到现实世界。
学习
【 在 nuanyangyang (暖羊羊) 的大作中提到: 】
: 不知道。猜以前的版本并没有AbstractList,是后来才引入的。引入之前ArrayList早就实现List了。
我的问题是为什么要实现这个接口,毕竟父类已经实现了
【 在 kobewingate 的大作中提到: 】
: 接口里的方法都是抽象的 肯定要被重写的 接口不就是用来实现的吗……