Java--容器认识
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java--容器认识相关的知识,希望对你有一定的参考价值。
一.为什么会出现同步容器?
在Java的集合容器框架中,主要有四大类别:List、Set、Queue、Map。
List、Set、Queue接口分别继承了Collection接口,Map本身是一个接口。
注意Collection和Map是一个顶层接口,而List、Set、Queue则继承了Collection接口,分别代表数组、集合和队列这三大类容器。
像ArrayList、LinkedList都是实现了List接口,HashSet实现了Set接口,而Deque(双向队列,允许在队首、队尾进行入队和出队操作)继承了Queue接口,PriorityQueue实现了Queue接口。另外LinkedList(实际上是双向链表)实现了了Deque接口。
像ArrayList、LinkedList、HashMap这些容器都是非线程安全的。
如果有多个线程并发地访问这些容器时,就会出现问题。
因此,在编写程序时,必须要求程序员手动地在任何访问到这些容器的地方进行同步处理,这样导致在使用这些容器的时候非常地不方便。
所以,Java提供了同步容器供用户使用。
二. 同步容器类别概览
三. 同步容器源码详解
资料参考:http://www.cnblogs.com/dolphin0520/category/602384.html
通过此链接的列表可以详细了解二中的一些容器的实现原理。
本文出自 “Curiosity” 博客,请务必保留此出处http://flash09.blog.51cto.com/8831225/1851784
以上是关于Java--容器认识的主要内容,如果未能解决你的问题,请参考以下文章
从头认识java-15.1 填充容器-利用Collection构造器的方式