# Hierarchy For Package com.google.common.collect

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - java.util.AbstractCollection<E> (implements java.util.Collection<E>)
    - java.util.AbstractQueue<E> (implements java.util.Queue<E>)
      - com.google.common.collect.MinMaxPriorityQueue<E>
    - java.util.AbstractSet<E> (implements java.util.Set<E>)
      - com.google.common.collect.ForwardingMap.StandardEntrySet
      - com.google.common.collect.ForwardingMap.StandardKeySet
      - com.google.common.collect.ForwardingMultiset.StandardElementSet
      - com.google.common.collect.ForwardingNavigableMap.StandardNavigableKeySet
      - com.google.common.collect.ForwardingSortedMap.StandardKeySet
      - com.google.common.collect.ForwardingSortedMultiset.StandardElementSet
      - com.google.common.collect.Sets.SetView<E>
    - com.google.common.collect.ConcurrentHashMultiset<E> (implements java.io.Serializable)
    - com.google.common.collect.EnumMultiset<E>
    - com.google.common.collect.ForwardingMap.StandardValues
    - com.google.common.collect.HashMultiset<E>
    - com.google.common.collect.ImmutableCollection<E> (implements java.io.Serializable)
      - com.google.common.collect.ImmutableList<E> (implements java.util.List<E>, java.util.RandomAccess)
      - com.google.common.collect.ImmutableMultiset<E> (implements com.google.common.collect.Multiset<E>)
        - com.google.common.collect.ImmutableSortedMultiset<E> (implements com.google.common.collect.SortedMultiset<E>)
      - com.google.common.collect.ImmutableSet<E> (implements java.util.Set<E>)
        - com.google.common.collect.ImmutableSortedSet<E> (implements java.util.NavigableSet<E>)
          - com.google.common.collect.ContiguousSet<C>
    - com.google.common.collect.LinkedHashMultiset<E>
    - com.google.common.collect.TreeMultiset<E> (implements java.io.Serializable)
  - java.util.AbstractMap<K,V> (implements java.util.Map<K,V>)
    - com.google.common.collect.HashBiMap<K,V> (implements com.google.common.collect.BiMap<K,V>, java.io.Serializable)
  - com.google.common.collect.ArrayListMultimap<K,V>
  - com.google.common.collect.ArrayTable<R,C,V> (implements java.io.Serializable)
  - com.google.common.collect.Collections2
  - com.google.common.collect.ComparisonChain
  - com.google.common.collect.DiscreteDomain<C>
  - com.google.common.collect.FluentIterable<E> (implements java.lang.Iterable<T>)
  - com.google.common.collect.ForwardingObject
    - com.google.common.collect.ForwardingCollection<E> (implements java.util.Collection<E>)
      - com.google.common.collect.ForwardingList<E> (implements java.util.List<E>)
      - com.google.common.collect.ForwardingMultiset<E> (implements com.google.common.collect.Multiset<E>)
        - com.google.common.collect.ForwardingSortedMultiset<E> (implements com.google.common.collect.SortedMultiset<E>)
        - com.google.common.collect.ForwardingSortedMultiset.StandardDescendingMultiset
      - com.google.common.collect.ForwardingQueue<E> (implements java.util.Queue<E>)
        - com.google.common.collect.EvictingQueue<E> (implements java.io.Serializable)
        - com.google.common.collect.ForwardingDeque<E> (implements java.util.Deque<E>)
          - com.google.common.collect.ForwardingBlockingDeque<E> (implements java.util.concurrent.BlockingDeque<E>)
      - com.google.common.collect.ForwardingSet<E> (implements java.util.Set<E>)
        - com.google.common.collect.ForwardingSortedSet<E> (implements java.util.SortedSet<E>)
          - com.google.common.collect.ForwardingNavigableSet<E> (implements java.util.NavigableSet<E>)
            - com.google.common.collect.ForwardingNavigableSet.StandardDescendingSet
    - com.google.common.collect.ForwardingIterator<T> (implements java.util.Iterator<E>)
      - com.google.common.collect.ForwardingListIterator<E> (implements java.util.ListIterator<E>)
    - com.google.common.collect.ForwardingMap<K,V> (implements java.util.Map<K,V>)
      - com.google.common.collect.EnumBiMap<K,V>
      - com.google.common.collect.EnumHashBiMap<K,V>
      - com.google.common.collect.ForwardingConcurrentMap<K,V> (implements java.util.concurrent.ConcurrentMap<K,V>)
      - com.google.common.collect.ForwardingNavigableMap.StandardDescendingMap
      - com.google.common.collect.ForwardingSortedMap<K,V> (implements java.util.SortedMap<K,V>)
        - com.google.common.collect.ForwardingNavigableMap<K,V> (implements java.util.NavigableMap<K,V>)
      - com.google.common.collect.ImmutableClassToInstanceMap<B> (implements com.google.common.collect.ClassToInstanceMap<B>, java.io.Serializable)
      - com.google.common.collect.MutableClassToInstanceMap<B> (implements com.google.common.collect.ClassToInstanceMap<B>)
    - com.google.common.collect.ForwardingMapEntry<K,V> (implements java.util.Map.Entry<K,V>)
    - com.google.common.collect.ForwardingMultimap<K,V> (implements com.google.common.collect.Multimap<K,V>)
      - com.google.common.collect.ForwardingListMultimap<K,V> (implements com.google.common.collect.ListMultimap<K,V>)
      - com.google.common.collect.ForwardingSetMultimap<K,V> (implements com.google.common.collect.SetMultimap<K,V>)
        - com.google.common.collect.ForwardingSortedSetMultimap<K,V> (implements com.google.common.collect.SortedSetMultimap<K,V>)
    - com.google.common.collect.ForwardingTable<R,C,V> (implements com.google.common.collect.Table<R,C,V>)
  - com.google.common.collect.HashBasedTable<R,C,V>
  - com.google.common.collect.HashMultimap<K,V>
  - com.google.common.collect.ImmutableClassToInstanceMap.Builder<B>
  - com.google.common.collect.ImmutableCollection.Builder<E>
    - com.google.common.collect.ImmutableList.Builder<E>
    - com.google.common.collect.ImmutableMultiset.Builder<E>
      - com.google.common.collect.ImmutableSortedMultiset.Builder<E>
    - com.google.common.collect.ImmutableSet.Builder<E>
      - com.google.common.collect.ImmutableSortedSet.Builder<E>
  - com.google.common.collect.ImmutableMap<K,V> (implements java.util.Map<K,V>, java.io.Serializable)
    - com.google.common.collect.ImmutableBiMap<K,V> (implements com.google.common.collect.BiMap<K,V>)
    - com.google.common.collect.ImmutableSortedMap<K,V> (implements java.util.NavigableMap<K,V>)
  - com.google.common.collect.ImmutableMap.Builder<K,V>
    - com.google.common.collect.ImmutableBiMap.Builder<K,V>
    - com.google.common.collect.ImmutableSortedMap.Builder<K,V>
  - com.google.common.collect.ImmutableMultimap<K,V> (implements java.io.Serializable)
    - com.google.common.collect.ImmutableListMultimap<K,V> (implements com.google.common.collect.ListMultimap<K,V>)
    - com.google.common.collect.ImmutableSetMultimap<K,V> (implements com.google.common.collect.SetMultimap<K,V>)
  - com.google.common.collect.ImmutableMultimap.Builder<K,V>
    - com.google.common.collect.ImmutableListMultimap.Builder<K,V>
    - com.google.common.collect.ImmutableSetMultimap.Builder<K,V>
  - com.google.common.collect.ImmutableRangeMap<K,V> (implements com.google.common.collect.RangeMap<K,V>, java.io.Serializable)
  - com.google.common.collect.ImmutableRangeMap.Builder<K,V>
  - com.google.common.collect.ImmutableRangeSet<C> (implements java.io.Serializable)
  - com.google.common.collect.ImmutableRangeSet.Builder<C>
  - com.google.common.collect.ImmutableTable<R,C,V>
  - com.google.common.collect.ImmutableTable.Builder<R,C,V>
  - com.google.common.collect.Interners
  - com.google.common.collect.Iterables
  - com.google.common.collect.Iterators
  - com.google.common.collect.LinkedHashMultimap<K,V>
  - com.google.common.collect.LinkedListMultimap<K,V> (implements com.google.common.collect.ListMultimap<K,V>, java.io.Serializable)
  - com.google.common.collect.Lists
  - com.google.common.collect.MapConstraints
  - com.google.common.collect.MapMaker
  - com.google.common.collect.Maps
  - com.google.common.collect.MinMaxPriorityQueue.Builder<B>
  - com.google.common.collect.MultimapBuilder<K0,V0>
    - com.google.common.collect.MultimapBuilder.ListMultimapBuilder<K0,V0>
    - com.google.common.collect.MultimapBuilder.SetMultimapBuilder<K0,V0>
      - com.google.common.collect.MultimapBuilder.SortedSetMultimapBuilder<K0,V0>
  - com.google.common.collect.MultimapBuilder.MultimapBuilderWithKeys<K0>
  - com.google.common.collect.Multimaps
  - com.google.common.collect.Multisets
  - com.google.common.collect.ObjectArrays
  - com.google.common.collect.Ordering<T> (implements java.util.Comparator<T>)
  - com.google.common.collect.Queues
  - com.google.common.collect.Range<C> (implements com.google.common.base.Predicate<T>, java.io.Serializable)
  - com.google.common.collect.Sets
  - com.google.common.collect.Tables
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - com.google.common.collect.ComputationException
  - com.google.common.collect.TreeBasedTable<R,C,V>
  - com.google.common.collect.TreeMultimap<K,V>
  - com.google.common.collect.TreeRangeMap<K,V> (implements com.google.common.collect.RangeMap<K,V>)
  - com.google.common.collect.TreeRangeSet<C>
  - com.google.common.collect.TreeTraverser<T>
    - com.google.common.collect.BinaryTreeTraverser<T>
  - com.google.common.collect.UnmodifiableIterator<E> (implements java.util.Iterator<E>)
    - com.google.common.collect.AbstractIterator<T>
    - com.google.common.collect.AbstractSequentialIterator<T>
    - com.google.common.collect.UnmodifiableListIterator<E> (implements java.util.ListIterator<E>)

## Interface Hierarchy

- com.google.common.collect.Interner<E>
- java.lang.Iterable<T>
  - java.util.Collection<E>
    - com.google.common.collect.Multiset<E>
      - com.google.common.collect.SortedMultisetBridge<E>
        - com.google.common.collect.SortedMultiset<E>
  - com.google.common.collect.SortedIterable<T>
    - com.google.common.collect.SortedMultiset<E>
- java.util.Iterator<E>
  - com.google.common.collect.PeekingIterator<E>
- java.util.Map<K,V>
  - com.google.common.collect.BiMap<K,V>
  - com.google.common.collect.ClassToInstanceMap<B>
- com.google.common.collect.MapConstraint<K,V>
- com.google.common.collect.MapDifference<K,V>
  - com.google.common.collect.SortedMapDifference<K,V>
- com.google.common.collect.MapDifference.ValueDifference<V>
- com.google.common.collect.Maps.EntryTransformer<K,V1,V2>
- com.google.common.collect.Multimap<K,V>
  - com.google.common.collect.ListMultimap<K,V>
  - com.google.common.collect.SetMultimap<K,V>
    - com.google.common.collect.SortedSetMultimap<K,V>
- com.google.common.collect.Multiset.Entry<E>
- com.google.common.collect.RangeMap<K,V>
- com.google.common.collect.RangeSet<C>
- com.google.common.collect.Table<R,C,V>
  - com.google.common.collect.RowSortedTable<R,C,V>
- com.google.common.collect.Table.Cell<R,C,V>

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - com.google.common.collect.BoundType