=== What is the State Pattern? ===
State pattern allows <ul><li>Allow an object to behave differently depending on its internal state. </li><li>Allow to sub-divide the behavior of an object depending on its current state.</li><li>Classified as a behavior pattern.</li><li>Also known as Objects for States.</li></ul>
=== When do you use the State Pattern? ===