interface List<E> { boolean add(E o) ; ... Iterator<E> iterator() ; ... } class LinkedList<E> implements List<E>, ... { ... } interface Iterator<E> { boolean hasNext() ; E next() ; }