# Class AbstractIteratorDecorator<E>

java.lang.Object
org.apache.commons.collections4.iterators.AbstractUntypedIteratorDecorator<E,E>
org.apache.commons.collections4.iterators.AbstractIteratorDecorator<E>

Type Parameters:
  `E` - the type of the iterator being decorated.

All Implemented Interfaces:
  `Iterator<E>`

Direct Known Subclasses:
  `AbstractDualBidiMap.EntrySetIterator`, `AbstractDualBidiMap.KeySetIterator`, `AbstractDualBidiMap.ValuesIterator`, `AbstractMapMultiSet.UniqueSetIterator`, `SkippingIterator`

public abstract class AbstractIteratorDecorator<E> extends AbstractUntypedIteratorDecorator<E,E>
Provides basic behavior for decorating an iterator with extra functionality.

All methods are forwarded to the decorated iterator.

Since:
  3.0

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `AbstractIteratorDecorator(Iterator<E> iterator)`
  Constructor that decorates the specified iterator.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `E`
  `next()`

  ### Methods inherited from class org.apache.commons.collections4.iterators.AbstractUntypedIteratorDecorator

  `getIterator, hasNext, remove`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface java.util.Iterator

  `forEachRemaining`

- ## Constructor Details

  - ### AbstractIteratorDecorator

    protected AbstractIteratorDecorator(Iterator<E> iterator)
    Constructor that decorates the specified iterator.
    Parameters:
      `iterator` - the iterator to decorate, must not be null
    Throws:
      `NullPointerException` - if the iterator is null

- ## Method Details

  - ### next

    public E next()