考虑包 java.util
中的类ArrayList
和AbstractList
的定义
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>
很明显,当AbstractList
实施List
而ArrayList
延伸AbstractList
时,则隐式ArrayList
实施List
。< / p>
implements List
定义中明确条款ArrayList
的目的是什么?
答案 0 :(得分:0)
使用源代码时,可以立即查看该类实现的接口。
当然,也可以从父类的源代码中看出这一点,但是直接声明可以节省查看(或者JavaDoc)的需要。当继承的接口在层次结构中非常高并且可能需要在找到多个父类之前,当父类的源代码不可用或者所讨论的接口是重要部分时,这可能更重要即使在父类不再支持合同之后,也必须保持实施。