java中ArrayList已经继承实现了LIst接口的类,为什么还实现List

2025-03-16 15:02:53
推荐回答(3个)
回答1:

List 源代码如下:
public interface List extends Collection
说明它是一个接口。
ArrayList源代码如下:
public class ArrayList extends AbstractList
implements List, RandomAccess, Cloneable, java.io.Serializable
说明它是一个类,且实现了List接口。

回答2:

因为继承AbstractList是间接实现了List接口,为了避免代理时出现错误,所以又直接实现了List接口,参考:

网页链接

回答3:

arraylist是继承了abstractlist然后实现了list接口吧,像add方法抽象类中调用的是实现类里的add方法
这样做的原因是多态吧,因为还有linkedlist什么的实现类,再具体就不太清楚了