标签:状态模式 state 状态改变 设计模式 复杂对象的状态改变
1、状态模式的简单介绍:
a、核心:
- 用于解决系统中复杂对象的状态转换以及不同状态下行为的封装问题。
b、结构:
- Context 环境类:
* 环境类中维护一个 State 对象,他是定义了当前的状态。
- State 抽象状态类
- ConcreteState 具体状态类:
* 每一个类封装了一个状态对应的行为。
2、简单的代码演示:
a、HotelRoomState 接口是 State 抽象状态类,FreeState、CheckedInState、BookedState 类是 ConcreteState 具体状态类。
b、看看 Client15 测试类输出的结果以及示例的类图关系。
- 银行系统中帐号状态的管理
- OA 系统中公文状态的管理
- 酒店系统中,房间状态的管理
- 线程对象各状态之间的切换
本文出自 “12392717” 博客,请务必保留此出处http://12402717.blog.51cto.com/12392717/1930014
标签:状态模式 state 状态改变 设计模式 复杂对象的状态改变
原文地址:http://12402717.blog.51cto.com/12392717/1930014