ConcreteState

E679879

ConcreteState is a specific implementation of the State interface in the State design pattern that encapsulates behavior associated with a particular state of a context object.

Try in SPARQL Jump to: Surface forms Statements Referenced by

Observed surface forms (1)

Surface form Occurrences
State pattern 1

Statements (46)

Predicate Object
instanceOf DesignPatternComponent
StatePatternElement
aimsTo localize state-specific behavior
simplify maintenance of state-dependent code
associatedWith Context
belongsTo behavioral design patterns
canBe immutable
mutable
canTransitionTo other ConcreteState instances
collaboratesWith Context
State
commonIn GoF State pattern implementations
object-oriented design
constrains behavior of Context while in this state
definedAs concrete class implementing the State interface
defines state-specific behavior for a Context object
differsFrom State interface as it provides concrete behavior
documentedIn State pattern examples in design pattern literature
encapsulates behavior associated with a particular state
granularity represents one specific state of many possible states
hasMethod handle()
request-specific operations defined by State interface
hasResponsibility handle requests for a specific state
possibly trigger state transitions in the Context
hasRole encapsulate variant behavior for a given state
implements State
invokedBy Context when delegating state-specific work
levelOfAbstraction concrete implementation
mayHold data specific to that state
references to other states
mayTrigger Context.setState() calls
modeledIn UML class diagrams NERFINISHED
oftenNamedAs ConcreteStateA
ConcreteStateB
participatesIn State design pattern NERFINISHED
relatedConcept Finite State Machine NERFINISHED
Strategy pattern NERFINISHED
replaces conditional logic based on state in Context
selectedBy Context based on its current state
supports open-closed principle for state-dependent behavior
single responsibility principle for state-specific logic
typicalLanguage C# NERFINISHED
C++ NERFINISHED
Java NERFINISHED
Python NERFINISHED
usedFor representing a concrete state of a Context

Referenced by (2)

Full triples — surface form annotated when it differs from this entity's canonical label.

State participants ConcreteState
subject surface form: State (design pattern)
Strategy relatedTo ConcreteState
this entity surface form: State pattern