类示意图:
ArrayList :
构造函数:ArrayList() ArrayList(int initialCapacity) ArrayList(Collection<? extends E> c)
初始化好的成员变量:DEFAULT_CAPACITY=10.如果使用默认的无参数构造函数,那么初始化的数组的长度就是10.扩容的话也会安装10的1.5倍去扩容
另外2个有参数的构造器方法如果长度都是大于0,那么扩容就会安装初始的长度的1.5倍数去扩容。
如果长度等于0的话,初始的容量就不会是10.就安装1.5倍数去扩容。
modCount:这个参数是用来作为fast-fail的用途来使用的。在迭代的过程中,会判断modCount和预期的值得大小。迭代过程中,执行的add或者remove操作会改变modcount,就会快速的发现变量的值不符合预期,就跑出异常
ArrayList 一共四个内部类:分别是ArrayListSpliterator,Itr,ListItr,SubList。