标签:new 控制 逻辑 src 分享 context 表达 不同 解决
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化。
UML图:
示例代码:
public class Context { public State state { get; set; } public Context(State state) { this.state = state; } public void Request() { state.Hanlder(this); } }
public abstract class State { public Context Context { get; set; } public abstract void Hanlder(Context context); }
class StateA : State { public override void Hanlder(Context context) { context.state=new StateB(); } }
class StateB:State { public override void Hanlder(Context context) { context.state = new StateA(); } }
标签:new 控制 逻辑 src 分享 context 表达 不同 解决
原文地址:https://www.cnblogs.com/chenyishi/p/9138457.html