Java in a Nutshell, 5th Edition [Electronic resources]

نسخه متنی -صفحه : 1191/ 685
نمايش فراداده

AbstractSequentialList<E>java.util

Java 1.2collection

This abstract class is a partial implementation of the List interface that makes it easy to define List implementations based on a sequential-access data model, as is the case with the LinkedList subclass. To implement a List based on an array or other random-access model, subclass AbstractList instead.

To implement an unmodifiable list, subclass this class and override the size( ) and listIterator( ) methods. listIterator( ) must return a ListIterator that defines the hasNext( ), hasPrevious( ), next( ), previous( ), and index( ) methods. If you want to allow the list to be modified, the ListIterator should also support the set( ) method and, optionally, the add( ) and remove( ) methods. AbstractSequentialList implements all other List methods in terms of these methods. Some subclasses may want to override additional methods to improve performance. In addition, it is conventional that all List implementations define two constructors: one that accepts no arguments and another that accepts a Collection of initial elements for the list.

Figure 16-5. java.util.AbstractSequentialList<E>

public abstract class

AbstractSequentialList<E> extends AbstractList<E> { // Protected Constructors protected

AbstractSequentialList ( ); // Public Methods Overriding AbstractList public void

add (int

index , E

element ); public boolean

addAll (int

index , Collection<? extends E>

c ); public E

get (int

index ); public Iterator<E>

iterator ( ); public abstract ListIterator<E>

listIterator (int

index ); public E

remove (int

index ); public E

set (int

index , E

element ); }

Subclasses

LinkedList