ArrayList
关于ArrayList
- ArrayList的长度可变:这里比较的是普通的数组你会发现普通数组没有扩容的方法,ArrayList继承了AbstractList因此继承了添加、删除、修改、遍历等方法并重写了他们。
- ArrayList具有随机访问功能:ArrayList实现了RandomAccess接口,但是这个接口并无内容,在自身类内部创建了内部类SubList实现RandomAccess接口并也实现增加删除等方法。
- ArrayList 能被克隆:ArrayList实现了Cloneable接口,但是这个接口也无内容,通过重写Object类的clone方法实现。
- ArrayList支持序列化:ArrayList实现了Serializable接口,但这个接口仍然是个空接口,对应的是writeObject方法。
*空接口起标识作用,告诉程序实现了它的对象具有某某功能
继承关系图
图源:参考资料1
通过各IDE查看源码可看到
参考资料:
-
知乎用户 Lyon 的文章Java集合—List—继承关系
-
CSDN用户 Fighter168 的文章ArrayList源码分析(基于JDK8)
来源:CSDN
作者:I'm bald,I'm better
链接:https://blog.csdn.net/weixin_44090559/article/details/104149559