vector 安全 Arraylist线程不安全
一、从存储数据的方式来看:
1、ArrayList是采用数组方式存储数据,实现了可变大小的数组。
它允许所有元素,包括null。
其特点:
(1)ArrayList没有同步。
(2)此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢。
2、Vector也是采用数组方式存储数据,由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差。
其特点:
(1)Vector是同步的。
(2)由Vector创建的Iterator,当一个Iterator被创建而且正在被使用,另一个线程改变了Vector的状态(例如,添加或删除了一些元素),这时调用Iterator的方法时将抛出ConcurrentModificationException,因此必须捕获该异常。
分享到:
相关推荐
本资源总结了 Java 相关基础知识,涵盖面向对象编程的特征、String 和 StringBuffer 的区别、运行时异常与一般异常的异同、Servlet 的生命周期、ArrayList, Vector, LinkedList 的存储性能和特性,以及 EJB 的实现...
涵盖了Java面试中常见的问题,包括作用域、String类、int和Integer的区别、String和StringBuffer的区别、运行时异常与一般异常的异同、Servlet的生命周期、ArrayList、Vector、LinkedList的存储性能和特性、EJB的...
5 运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...
5、运行时异常与一般异常有何异同? 6、说出Servlet的生命周期,并说出Servlet和CGI的区别。 7、说出ArrayList,Vector, LinkedList的存储性能和特性 8、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的...
本文档是一个 JAVA 面试题集,涵盖了 JAVA 相关基础知识点,包括面向对象的特征、String 和 StringBuffer 的区别、运行时异常与一般异常的异同、Servlet 的生命周期、ArrayList, Vector, LinkedList 的存储性能和...
异同、ArrayList 与 Vector 区别、HashMap的底层实现、HashMap 和 Hashtable 的区别、HashMap 的长度为什么是2的幂次方、HashSet 和 HashMap 区别、ConcurrentHashMap 和 Hashtable 的区别、ConcurrentHashMap线程...
异同、ArrayList 与 Vector 区别、HashMap的底层实现、HashMap 和 Hashtable 的区别、HashMap 的长度为什么是2的幂次方、HashSet 和 HashMap 区别、ConcurrentHashMap 和 Hashtable 的区别、ConcurrentHashMap线程...
本资源摘要信息涵盖了 Java 程序员笔试面试题汇总及答案,涉及面向对象编程、Java 基础知识、String 和 StringBuffer 的区别、运行时异常与一般异常的异同、Servlet 生命周期、ArrayList, Vector, LinkedList 的存储...
5 运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,...
2018秋招java笔试题 目录 :hot_beverage: Java Java/J2EE 基础 Java 集合框架 Java 多线程 ...与 ...数据结构与算法 ...计算机网络与数据通信 ...异同、ArrayList 与 Vector 区别、HashMap的底层实现、HashMap 和
5. 运行时异常与一般异常有什么异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java 编译器要求方法必须声明抛出可能发生的非运行时...
5. 运行时异常与一般异常有何异同?运行时异常是指在虚拟机的通常操作中可能遇到的异常,而一般异常是指编译器要求方法必须声明抛出的非运行时异常。 Java 核心类 6. 说出一些常用的类、包、接口,请各举 5 个。 ...
23.ArrayList与Vector的异同: - ArrayList和Vector都是基于数组实现,保持插入顺序。 - ArrayList非同步,性能优于同步的Vector。 - ArrayList提供更丰富的功能,如Collections工具类的支持,可轻松实现同步和只读...
包括面向对象的特性、数据类型的差异、循环控制关键字的区别以及集合框架中的ArrayList、Vector和LinkedList的性能对比,还有HashMap与Hashtable之间的关键异同以及重载(Overloading)与重写(Override)的原理。...
五、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。Java 编译器要求方法必须声明抛出可能发生的非运行时...
- **ArrayList与LinkedList异同**:ArrayList基于动态数组,访问速度快,插入和删除慢;LinkedList基于双向链表,插入和删除快,访问慢。 - **ArrayList与Vector区别**:Vector线程安全,每个方法都加了...
集合框架方面,详细阐述了List和Set的区别,List和Map的区别,以及ArrayList与LinkedList、ArrayList与Vector之间的不同。重点讲解了HashMap的工作原理及代码实现,以及ConcurrentHashMap的实现原理,包括其线程安全...
5. **运行时异常与一般异常的异同**:运行时异常通常由编程错误引起,如数组越界,而一般异常(非运行时异常)则需要程序员显式处理,如IOException。JAVA编译器要求必须处理非运行时异常,而运行时异常可以不被捕获...