![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JDK源码
许多许多许多多
这个作者很懒,什么都没留下…
展开
-
JDK源码解读————AbstractList(抽象类)
public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E> {从类的声明可以看到,AbstractList其实是List接口的简单实现,提供了一些方法的具体实现,如果要自己创建一个LIST,就可以继承这个抽象类,能少写很多代码。1.属性...原创 2019-10-18 13:41:39 · 168 阅读 · 0 评论 -
JDK源码解读————Collection(接口)
Collection接口是对存储数据的容器的抽象,里面定义的方法其实就是容器应该具有的功能。1. 新增、删除、清空boolean add(E e);boolean addAll(Collection<? extends E> c);boolean remove(Object o);boolean removeAll(Collection<?> c);...原创 2019-09-17 17:02:42 · 120 阅读 · 0 评论 -
JDK源码解读————AbstractCollection(抽象类)
AbstractCollection注释的最上方,就说这是Collection基本的实现。构造器方法 protected AbstractCollection() {}抽象方法 public abstract Iterator<E> iterator(); public abstract int size();这里为什么这两个方法要定义成抽象的呢?其实原因很...原创 2019-09-18 10:37:52 · 138 阅读 · 0 评论 -
JDK源码解读————Iterable(接口)
因为Collection接口继承了Iterable接口,所以过一下这个类。1.返回迭代器Iterator<T> iterator();2. 循环default void forEach(Consumer<? super T> action) { Objects.requireNonNull(action); for (T t : this...原创 2019-09-18 16:04:45 · 116 阅读 · 0 评论 -
JDK源码解读————Iterator(接口)
上一篇的Iterable实现了一个Iterator对象,这个接口的子类就是实际的迭代器。1.hasNext() 判断是否还有元素boolean hasNext();2.next() 返回下一个元素E next();3.remove()default void remove() { throw new UnsupportedOperationException(...原创 2019-09-18 17:24:30 · 104 阅读 · 0 评论 -
JDK源码解读————List(接口)
List接口继承了Collection接口,是列表这一类型的基础接口继承父类的方法int size();boolean isEmpty();boolean contains(Object o);Iterator<E> iterator();Object[] toArray();<T> T[] toArray(T[] a);boolean add(E e...原创 2019-09-18 18:00:39 · 107 阅读 · 0 评论 -
JDK源码解读————ListIterator(接口)
ListIterator继承Iterator接口,是专门给列表使用的迭代器的接口继承的方法 boolean hasNext(); E next(); void remove();注意Iterator有一个default的方法forEachRemaining(Consumer<? super E> action),这个default关键词是1.8才有的,作用是为了在接口...原创 2019-09-19 11:03:17 · 122 阅读 · 0 评论