您的位置:首页 > 编程语言 > C#

设计模式_状态模式_C#

2013-09-09 17:37 501 查看
public class Context
{
private State state;
public State State
{
get { return state; }
set { state = value; }
}
public Context(State state)
{
this.state = state;
}
/// <summary>
///
/// </summary>
public void Request()
{
state.Handler(this);
}
}
/// <summary>
///
/// </summary>
public abstract class State
{
public abstract void Handler(Context text);

}
public class ContextStateA:State
{
public override void Handler(Context text)
{
Console.WriteLine("当前状态是A");
text.State = new ContextStateB();
}
}
public class ContextStateB:State
{
public override void Handler(Context text)
{
Console.WriteLine("当前状态是B");
text.State = new ContextStateA();
}
}


调用:

ContextStateA a=new ContextStateA();
Context text=new Context(a);
text.Request();
text.Request();
Console.ReadKey();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: