这篇文章主要介绍“什么是Vector子类”,在日常操作中,相信很多人在什么是Vector子类问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”什么是Vector子类”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联-专业网站定制、快速模板网站建设、高性价比曲周网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式曲周网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖曲周地区。费用合理售后完善,10多年实体公司更值得信赖。
Vector是一个原始古老的程序类,这个类是在JDK1.0时提供的。到了JDK1.2时由于许多开发者已经习惯于使用Vector,并且许多系统类也是基于Vector实现的,考虑到其使用的广泛性,所以类集框架将其保留了下来,并让其多实现了一个List接口,观察Vector的定义结构:
public class Vectorextends AbstractList implements List , RandomAccess, Cloneable, Serializable
继承结构与ArrayList是相同的,所以来讲这个类继承结构如下。
Vector继承结构
范例:Vector类使用
import java.util.List;import java.util.Vector;public class JavaAPIDemo {public static void main(String[] args) throws Exception { Listall = new Vector ();all.add("Hello");all.add("Hello");all.add("Wolrd");all.add("MLDN");all.forEach(System.out::println); // Hello Hello World MLDN } }
下面可以进一步的观察Vector类实现:
public Vector() {this(10); }public Vector(int initialCapacity) {this(initialCapacity, 0); }public Vector(int initialCapacity, int capacityIncrement) {super();if (initialCapacity < 0)throw new IllegalArgumentException("Illegal Capacity: "+ initialCapacity);this.elementData = new Object[initialCapacity];this.capacityIncrement = capacityIncrement; }
Vector类如果使用的是无参构造方法,则一定会默认开辟一个10个长度的数组,而后其余的实现操作与ArrayList是相同的。通过源代码分析可以发现,Vector类中的操作方法采用的都是synchronized同步处理,而ArrayList并没有进行同步处理,所以Vector类中的方法在多线程访问的时候属于线程安全的,但是性能不如ArrayList高。
到此,关于“什么是Vector子类”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!