Class diagram of Set API

In Set API:

  • Set<E> is the base interface for all kinds of set. This interface extends all methods from the Collection<E>interface and does not define any new methods.
  • Sub interfaces: SortedSet<E> and NavigableSet<E>.
  • Abstract subclasses: AbstractSet<E> and EnumSet<E extends enum<E>>.
  • Concrete implementation classes: HashSet<E>, LinkedHashSet<E>, TreeSet<E>,ConcurrentSkipListSet<E> and CopyOnWriteArraySet<E> (these two last classes are under java.util.concurrent package).
  • The JobStateReasons class extends HashSet<E> but it is not a member of Java Collections Framework.

The following class diagram outlines the Set API in Java Collections Framework:

Set API class diagram