为了春招,系统地复习一下Java相关的知识,应该不会写源码解析,完全是给自己看的,如果足够幸运,有幸进入大厂,重新写下给别人看的
注意点
- Vector其实就是线程安全的变长数组,底层和ArrayList也较为类似,就是扩容时复制数组扩容
- Vector的扩容和ArrayList有一些不一样,是通过
capacityIncrement
这个值来进行扩容,如果这个值<=0,则默认扩容至原来的两倍,否则,扩容至capacityIncrement
,底层数组是有最大值的,就是Integer.MAX_VALUE
- vector的线程安全是通过同步方法实现的,和我在HashTable中说的一样,这样的锁粒度太大
- Vector也实在没有什么说的,以后想到再说吧.