Implementations
Implementations are the actual data objects used to store collections, which
implement the core collection interfaces described in
the previous lesson.
The sections that follow describe three kinds of implementations:
General-purpose implementations are the public classes that provide the
primary implementations of the core collection interfaces.
Wrapper implementations are used in combination with other
implementations (often the general-purpose implementations) to provide added
functionality.
Convenience implementations are mini-implementations, typically made
available via static factory methods that provide convenient,
efficient alternatives to the general-purpose implementations for special
collections (like singleton sets).
Additionally, you can build your own implementations, based on the JDK's
abstract implementations. This is described in a separate lesson because
it's an advanced topic. It's not particularly hard, but relatively few people
will need to do it.