See where State genuinely helps in Java systems, especially around lifecycle-rich domains such as orders, workflows, connections, and UI modes.
State is strongest where lifecycle is central to the model.
State is weak when:
Use State when status-dependent behavior is important enough to deserve its own explicit model.