|
||||||||||||||||||||||
|
||||||||||||||||||||||
|
|||||
| 设计模式之观察者模式 | |||||
| 作者:佚名 文章来源:本站原创 点击数: 更新时间:2007-11-3 | |||||
|
故事
看到这么多烦恼,我们创意无限的Nokia公司给小雪和男孩们提出了解决方案: 观察者模式的解决方案 在上面Nokia的解决方案中就透露出观察者模式的思想:观察者模式定义了对象之间一对多的依赖,当这个对象的状态发生改变的时候,多个对象会接受到通知,有机会做出反馈。在运行的时刻可以动态的添加和删除观察者。 带着这个定义我们来看看尝试实现上面的观察者模式 首先在观察者模式中我们必须定义一个所有“观察者”都必须实现的接口,这样被观察者向观察者发送消息的时候就可以使用统一的方式,这也符合面相对象原则中的面向接口编程: 1 //所有观察者都必须实现 2 public interface IBoy 3 ![]() ![]() { 4 //向男孩们显示小雪位置情况,也就是向观察者发送消息,观察者还可以对此做出反馈 5 void Show(string address); } 6 ![]() 7 using System; 8 //男孩A,一个观察者 9 public class BoyA : IBoy 10 ![]() ![]() { 11 public void Show(string address) 12 ![]() ![]() { 13 //假设经过处理后为韩文的地址 14 Console.WriteLine("A:"+address); 15 } 16 } 17 using System; 18 //男孩B,又一个观察者 19 public class BoyB :&nbs[1] [2] [3] [4] [5] [6] [7] [8] 下一页 |
|||||
|
|||||
| 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| 没有相关文章 |
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |