当我看到声明时ArrayList
class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
List
即使ArrayList
的超类AbstractList
实现了相同的接口,它也实现了List
接口。
abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>
类似的声明也可以在HashMap
,LinkedHashMap
声明中找到。
在 的声明中LinkedHashMap
,它只实现Map
接口,而不实现其超类实现的其他接口HashMap
。
所以有这样的声明可能会有一些好处。