Java 的 list 接口继承自 Collection 接口,但是为啥都有 iterator( ) 方法 ?

List 接口继承自 Collection 接口, 那么 实现 List 接口的类, 就算 List 中没有声明 iterator( ) 方法 , 也会因为 Collection 中 已经声明了 ,而必须实现 iterator 方法啊? 为啥 List 中 又 声明了一个和Colleciton 接口一样的 iterator( ) 方法 ?

阅读 2.2k
3 个回答


从图里可以看到,有来自父接口的标志,我自己也测试了一下,如果只是继承父接口而没有声明同样的接口的话,只会展示继承关系,扯的远了...
我看了1楼的链接,个人也觉得从抽象层次上来理解可能更加直观
期待有个大佬讲得再透一点

纯粹为了更清晰一些,没有其他任何作用,类似的例子还有很多,比如这个:

public class ArrayList<E> extends AbstractList<E>
        implements List<E>, RandomAccess, Cloneable, java.io.Serializable
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题