首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

状态方式(State)

2013-09-17 
状态模式(State)@@@模式定义:允许一个对象在其内部状态改变时改变它的行为。对象看起来乎修改了它的类@@@练

状态模式(State)
@@@模式定义:
允许一个对象在其内部状态改变时改变它的行为。
对象看起来似乎修改了它的类

@@@练习示例: 
在线投票

@@@示例代码:
\pattern\VoteState.java

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

package user;import pattern.VoteManager;public class Client {    public static void main(String[] args) {    VoteManager vm = new VoteManager();    for (int i = 0; i < 8; i++) {    vm.vote("u1", "A");    }    }}

@@@模式的实现:
上下文持有状态对象,但是其自身并不处理跟状态相关的行为,
而是将状态处理的功能委托给了状态对应的状态处理类来处理。

@@@模式的优点:
简化应用逻辑控制;
更好地分离状态和行为;
更好的扩展性;
显式化进行状态转换;

@@@模式的缺点:
一个状态对应一个状态处理类,会使程序引入太多的状态类,
这会使程序变得杂乱。

@@@模式的本质:
根据状态来分离和选择行为。

@@@模式体现的设计原则:
NA


热点排行