8. 状态(State)
Intent
允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它所属的类。
Class Diagram
Implementation
糖果销售机有多种状态,每种状态下销售机有不同的行为,状态可以发生转移,使得销售机的行为也发生改变。
1 | public interface State { |
1 | public class HasQuarterState implements State { |
1 | public class NoQuarterState implements State { |
1 | public class SoldOutState implements State { |
1 | public class SoldState implements State { |
1 | public class GumballMachine { |
1 | public class Client { |
1 | You insert a quarter |
