State Design Pattern → Behavioral Design Pattern → Allows an object to alter its behavior when its internal state changes. ------------------------------ Read less