欢迎来到天天文库
浏览记录
ID:33748286
大小:246.15 KB
页数:23页
时间:2019-02-28
《Java Collections中的Fail Fast机制》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、JavaCollectionsFramework的FailFast机制及代码导读江苏无锡缪小东本文章主要抽取了JavaCollectionsFramework中的Collection接口、List接口、AbstractCollection抽象类、AbstractList抽象类和具体的ArrayList的实现纵向研究了JavaCollectionsFramework中的FailFast机制,通常的编程错误以及这些接口和类之间的关系,以有助于大家对JavaCollectionsFramework源代码的研究。“FailFast”机制――列表的结构在其返回遍历器(Iterator)后的
2、任何时候发生变化(这种变化不包括遍历器本身调用remove方法移除元素)后,将会导致遍历器抛出异常的机制。一、Collection接口Collection接口是JavaCollectionsFramework中两个顶层接口(Collection和Map)中的一个。它表示一个集合的概念。packagejava.util;publicinterfaceCollectionextendsIterable{//以下是几个查询的方法intsize();//查询有几个元素booleanisEmpty();//查询聚集是否为空booleancontains(Objecto);//查
3、询聚集是否包含某个元素Iteratoriterator();//返回聚集的遍历器,遍历器模式在Java中的典型应用Object[]toArray();//将聚集中的元素转换为对象数组T[]toArray(T[]a);//将聚集中的元素转换为指定类型的对象数组//以上两个方法是Collection向数组转换的桥梁之一//(另外一个,就是Arrays.asList,将数组转换为Collection的子接口List)//它们构成Collection和Array转换的桥梁//修改操作booleanadd(Ee);//增加指定的元素booleanremove(Objecto);
4、//删除指定的元素//批量操作booleancontainsAll(Collection>c);//查询是否包含某个聚集booleanaddAll(Collectionc);//将某个聚集假如该聚集booleanremoveAll(Collection>c);//从本聚集中删除指定聚集中的元素booleanretainAll(Collection>c);//在本聚集中保存指定聚集中的元素voidclear();//清除本聚集中所有的元素//父类的方法booleanequals(Objecto);//聚集自身的比较方法inthashCode();/
5、/聚集自身的hash值}1二、List接口List接口是Collection接口的三个子接口(List、Set、Queue)之一。它是各种具体列表(ArrayList、LinkedList)的公共接口。它们共同的特点是可以通过索引访问聚集中的对象。packagejava.util;publicinterfaceListextendsCollection{//蓝色的为List接口中的新方法,其它的为Collection接口中的方法。//查询操作intsize();booleanisEmpty();booleancontains(Objecto);Iteratori
6、terator();Object[]toArray();T[]toArray(T[]a);//修改操作booleanadd(Ee);booleanremove(Objecto);//批处理操作booleancontainsAll(Collection>c);booleanaddAll(Collectionc);booleanaddAll(intindex,Collectionc);//将聚集插入指定索引booleanremoveAll(Collection>c);booleanretainAll(Collection>
7、c);voidclear();//比较和hsah操作booleanequals(Objecto);inthashCode();//位置相关的操作,只是List接口特有的Eget(intindex);//得到指定索引处的元素Eset(intindex,Eelement);//设置指定索引处的元素voidadd(intindex,Eelement);//在指定索引处插入元素Eremove(intindex);//删除指定索引处的元素//查找操作intindexOf(Objecto);
此文档下载收益归作者所有