我是靠谱客的博主 迷你灯泡,这篇文章主要介绍vector过时的代替建议,现在分享给大家,希望可以做个参考。

原答案

https://stackoverflow.com/questions/1386275/why-is-java-vector-class-considered-obsolete-or-deprecated


Vector在每个单独的操作上同步。这几乎从来没有你想要做的。


通常你想同步整个操作序列。同步单个操作不太安全(例如,如果您遍历Vector,则仍需要取出锁以避免其他人同时更改集合,这会在迭代线程中导致ConcurrentModificationException),而且还速度较慢(为什么在一次足够的时候反复地重复锁定)?


当然,即使你不需要,它也有锁定的开销。


基本上,在大多数情况下,这是一个非常有缺陷的同步方法。正如Brian Henk先生指出的那样,您可以使用诸如Collections.synchronizedList之类的调用来装饰集合 - Vector将“调整大小的数组”集合实现与“同步每个操作”位相结合的事实是设计不佳的另一个例子;装修方式让人更清楚地分离顾虑。

最后

以上就是迷你灯泡最近收集整理的关于vector过时的代替建议的全部内容,更多相关vector过时内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(120)

评论列表共有 0 条评论

立即
投稿
返回
顶部