ArrayList
是Java集合框架中的一部分,底层是通过数组实现的,可以动态增长和缩减。
一、首先看成员变量
- 序列化ID定义。在Java中,如果一个类实现了Serializable接口,那么它的serialVersionUID就非常重要了。serialVersionUID用于确保类的版本兼容性,如果你修改了类的内容,但是serialVersionUID没有改变,那么你可以反序列化旧版本的类。
@java.io.Serial
private static final long serialVersionUID = 8683452581122892189L;
- 通过空参构造方法创建对象后第一次添加元素之时的数组容量
private static final int DEFAULT_CAPACITY = 10;
- 通过有参构造方法传入初始长度为0时将其赋值给存储元素的数组elementData
private static final Object[] EMPTY_ELEMENTDATA = {};
- 通过空参构造方法创建对象后第一次添加元素之前的数组容量,为0,只有在第一次添加元素时才会将elementData的容量扩容到10;