集合类库(一):集合类库的基本框架
2009-09-18 00:00:00 来源:WEB开发网(1) 什么是Java集合类
我们在编写程序的时候,不可避免的要使用上序列表,链,堆栈,队列等数据结构来组织数据。如果这些结构都要自己重新写,估计大家都会疯的。自JDK1.0以来,Java类库就为一些数据结构提供了标准类。这些标准的Java数据结构类,就是集合类。
(2)集合类库的基本框架
所谓框架,就是指一个类库。它形成了创建高级功能的基础。框架中会包含很多的超类(接口和抽象类),这些超类拥有非常有用的基本功能,策略和机制。程序员可以扩展这些超类的功能来建立自己的集合类,而不需要重新创建基本操作。
Java的集合类库构成了集合类的框架 ,它为集合的实现者提供了大量的接口和抽象类(还有一些非常好用的具体实现类,比如ArrayList),并且描述了一些操作的实现机制。比如迭代机制,AbstractList类就使用了私有内部类来描述标准迭代器的实现,并且通过实现Iterable接口来返回迭代器对象。这样的好处自然是大大的,如果我们自定义具有特殊功能的List类,可以直接使用AbstractList的迭代器;也可以自己仿照这种实现机制来编写自己高效的迭代功能;还可以在现有迭代器功能的基础上加以扩展。
Java代码
//AbstractList的迭代协议
//Iterable接口用于返回一个迭代器,Iterator接口用于实现一个迭代器所需的三个基本方法
public Iterator<E> iterator() {//必须实现老爸需要实现Iterable接口
return new Itr();
}
private class Itr implements Iterator<E> { //所有迭代器必须实现Iterator接口
int cursor = 0;
int lastRet = -1;
int expectedModCount = modCount;
public boolean hasNext() {
....
}
public E next() {
....
}
public void remove() {
....
}
}
更多精彩
赞助商链接