# Hierarchy For Package org.optaplanner.core.impl.heuristic.selector.value.chained

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.optaplanner.core.impl.heuristic.selector.AbstractSelector (implements org.optaplanner.core.impl.heuristic.selector.Selector)
    - org.optaplanner.core.impl.heuristic.selector.value.chained.DefaultSubChainSelector (implements org.optaplanner.core.impl.heuristic.selector.common.SelectionCacheLifecycleListener, org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector)
  - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChain

## Interface Hierarchy

- java.util.EventListener
  - org.optaplanner.core.impl.solver.event.SolverLifecycleListener<Solution_>
    - org.optaplanner.core.impl.phase.event.PhaseLifecycleListener<Solution_>
      - org.optaplanner.core.impl.heuristic.selector.Selector
        - org.optaplanner.core.impl.heuristic.selector.IterableSelector<T> (also extends java.lang.Iterable<T>)
          - org.optaplanner.core.impl.heuristic.selector.ListIterableSelector<T> (also extends org.optaplanner.core.impl.heuristic.selector.common.iterator.ListIterable<T>)
            - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector
- java.lang.Iterable<T>
  - org.optaplanner.core.impl.heuristic.selector.IterableSelector<T> (also extends org.optaplanner.core.impl.heuristic.selector.Selector)
    - org.optaplanner.core.impl.heuristic.selector.ListIterableSelector<T> (also extends org.optaplanner.core.impl.heuristic.selector.common.iterator.ListIterable<T>)
      - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector
  - org.optaplanner.core.impl.heuristic.selector.common.iterator.ListIterable<T>
    - org.optaplanner.core.impl.heuristic.selector.ListIterableSelector<T> (also extends org.optaplanner.core.impl.heuristic.selector.IterableSelector<T>)
      - org.optaplanner.core.impl.heuristic.selector.value.chained.SubChainSelector