# Hierarchy For Package de.caff.generics.util

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - de.caff.generics.util.CopyRef<T> (implements de.caff.generics.util.IReference<T>)
  - de.caff.generics.util.HardReferenceImpl<T> (implements de.caff.generics.util.IReference<T>)
  - de.caff.generics.util.MutableRef<T> (implements de.caff.generics.util.IReference<T>)
  - java.lang.ref.Reference<T>
    - java.lang.ref.SoftReference<T>
      - de.caff.generics.util.SoftReferenceImpl<T> (implements de.caff.generics.util.IReference<T>)
    - java.lang.ref.WeakReference<T>
      - de.caff.generics.util.WeakReferenceImpl<T> (implements de.caff.generics.util.IReference<T>)
  - de.caff.generics.util.SimpleCounter (implements de.caff.generics.util.Counter)
  - de.caff.generics.util.SimpleLongCounter (implements de.caff.generics.util.LongCounter)
  - de.caff.generics.util.ThreadSafeCounter (implements de.caff.generics.util.Counter)
  - de.caff.generics.util.ThreadSafeLongCounter (implements de.caff.generics.util.LongCounter)

## Interface Hierarchy

- de.caff.generics.util.Counter
- de.caff.generics.util.IReference<T>
- de.caff.generics.util.LongCounter
- de.caff.generics.util.LongCounter.Creator
- java.util.function.Supplier<T>
  - de.caff.generics.util.Counter.Creator

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - de.caff.generics.util.ReferenceType