博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[转载] C#面向对象设计模式纵横谈——22 State状态模式
阅读量:6265 次
发布时间:2019-06-22

本文共 959 字,大约阅读时间需要 3 分钟。

主讲:李建忠

来源:

 

 

1:  abstract class StatedDocument    //抽象类——表达状态及依赖状态的行为
2:  {
3:      public abstract void Handle1();
4:      public abstract void Handle2();
5:      public abstract void Handle3();
6:   
7:      public abstract StatedDocument Next
8:      {
9:          get;
10:          set;
11:      }
12:  }
13:   
14:  class Document   //主逻辑
15:  {
16:      StatedDocument statedDocument;
17:   
18:      public void SetStatedDocument(StatedDocument statedDocument)
19:      {
20:          this.statedDocument=statedDocument;
21:      }
22:   
23:      public void Handle1()
24:      {
25:          statedDocument.Handle1();
26:          statedDocument=statedDocument.Next;
27:      }
28:   
29:      public void Handle2()
30:      {
31:          statedDocument.Handle2();
32:      }
33:   
34:      public void Handle3()
35:      {
36:          statedDocument.Handle3();
37:      }
38:  }

 

转载于:https://www.cnblogs.com/6DAN_HUST/archive/2012/08/04/2623307.html

你可能感兴趣的文章
为什么开通博客?
查看>>
深入浅出Mybatis系列(四)---配置详解之typeAliases别名(mybatis源码篇)
查看>>
LVS+Keepalived实现高可用负载均衡(转)
查看>>
Django学习【第14篇】:Django之Form组件补充
查看>>
在web.xml中配置初始化参数
查看>>
Java多线程下 ThreadLocal 的应用实例
查看>>
Serializable:序列化代理
查看>>
SQL中表约束是什么意思
查看>>
JS中小数的差,比较大小
查看>>
堆数据结构
查看>>
codeforces / project Euler 泛做
查看>>
对JS中事件委托的理解
查看>>
非确定性计算引擎转化为C#版本并重构
查看>>
解决问题:Django admin页面样式丢失
查看>>
获取指定<文字行数>的<高度>是多少 TextKit
查看>>
IO - 同步,异步,阻塞,非阻塞 (亡羊补牢篇)
查看>>
Asp.Net Core实战(干货)
查看>>
获取客户端内网IP
查看>>
ReportServices开发工具
查看>>
JavaScript学习——JavaScript 作用域 事件
查看>>