java中的Vector类

java中的Vector类与ArrayList类相似,都是实现动态数组的,但为什么说Vector类是同步的呢?小弟不懂,请各位高手帮忙一下,谢谢!... java中的Vector类与ArrayList类相似,都是实现动态数组的,但为什么说Vector类是同步的呢?小弟不懂,请各位高手帮忙一下,谢谢! 展开
 我来答
东扯葫芦西扯叶
2010-06-27 · TA获得超过174个赞
知道答主
回答量:135
采纳率:0%
帮助的人:86.9万
展开全部
你去看一下Vector的源码,会发现里边的方法全是synchronized修饰的,这就是说它能在多线程访问下保证数据的安全,线程只能以同步的方式来访问它,至于同步的概念,给你打个比方,下课了,你和你同学都去吃饭,结果他因为有些作业还没做完,想过会儿再去吃,这时候你可以有两个选择,如果你跟他很要好,那你可能不得不等他做完作业后再跟他一同去吃饭,这便是同步方式;当然,你也可以选择不管他什么时候去,你都立马去,这是异步方式。显然,对于你来说,后者的效率更高一点!Vector和ArrayList的区别也就在此,Vector因为采用线程同步方式(synchronized),所以安全性高一点,但效率较低,ArrayList则相反,具体应用场合得看需要,自己体会去吧,祝你成功!
话题前哨
2010-06-27 · TA获得超过208个赞
知道小有建树答主
回答量:95
采纳率:0%
帮助的人:95.5万
展开全部
在java中的同步,是指多个线程在同时要访问某个对象、变量、方法、代码快等等时,保证只有唯一线程访问同步的对象(即用synchronized修为的内容)。
也可以这样理解:同步就是指保证在同一时刻只有一个线程访问同步对象的前提下,确保操作同步对象的线程顺序,跟他们发出访问同步对象请求时的顺序一致。

Vector是老版本jkd(1.0的时候就有)的一个集合类,因为Vector是同步的而ArrayList是非同步的,所以Vector的性能比ArrayList要差。
在不需要保证同步的情况下。尽量使用ArryList,在需要同步时,可以考虑用Vector(其实在需要同步的条件下,也同样不推荐用Vector,java中有个集合工具类Collections,它可以将一个ArrayList编程线程安全的)。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式