一个关于list想不通的问题,java 源码研究发现
由于想研究下接口技术,就看了下LinkedList的源码,发现了个不解的问题
现在在网吧没工具画图,我就随便说下,大家有条件的参考下j2se的API对照下
LinkedList extends AbstractSequentialList implements List ...
而
AbstractSequentialList extends AbstractList
又
AbstractList extends AbstractCollection implements List
问题出现在这了
既然 LinkedList --> AbstractSequentialList --> AbstractList --> List
为什么 LinkedList 又要再去实现 List接口呢?
有点感觉多此一举啊。不理解。。
假设LinkedList 如此定义
public class LinkedList<E>
extends AbstractSequentialList<E>
implements Deque<E>, Cloneable, Serializable /**源码中多了个List*/
我们在使用的时候照样可以
List list = new LinkedList();
为什么sun要重复实现List?
期待高人指点
现在在网吧没工具画图,我就随便说下,大家有条件的参考下j2se的API对照下
LinkedList extends AbstractSequentialList implements List ...
而
AbstractSequentialList extends AbstractList
又
AbstractList extends AbstractCollection implements List
问题出现在这了
既然 LinkedList --> AbstractSequentialList --> AbstractList --> List
为什么 LinkedList 又要再去实现 List接口呢?
有点感觉多此一举啊。不理解。。
假设LinkedList 如此定义
public class LinkedList<E>
extends AbstractSequentialList<E>
implements Deque<E>, Cloneable, Serializable /**源码中多了个List*/
我们在使用的时候照样可以
List list = new LinkedList();
为什么sun要重复实现List?
期待高人指点
...全文
相关推荐
Collections源码java-Custom-Java:这是我从各种来源在Internet上发现的一些问题的集合,这些问题已用Java解决
Collections 源码 java
【Java集合 2】list循环删除问题
今天同事来找我说代码有问题,list中remove,这是不对的,我记得当时我真的进行了测试,我也觉得不对,但是确实是没测出来,就没多想!真的是菜的一笔! 今天好好研究一下,先写几个case预热一下 一、几种常见的遍历方式 1、普通for循环 2、高级for循环 3、iterator和removeIf 4、stream() 5、复制 二、源码篇 1、普通for循环出错原因 public boolean remove(Object o) { if (o == .
Map+List+ArrayList+LinkedList Java源码
Map+List+ArrayList+LinkedList Java源代码,适合初学者
list.toArray方法
NULL 博文链接:https://jiaguwen123.iteye.com/blog/1679345
易语言仿java集合 list map源码
易语言面相对象编程仿java集合 list, 以及map工具类 模块ec源码


Java SE
