会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
--◆-- 优游 {回答问题把头抬起来}
首页
新随笔
联系
订阅
管理
观察者模式 代码
Code
1
2
1
using
System;
3
2
using
System.Collections.Generic;
4
3
using
System.Text;
5
4
6
5
namespace
ClassLibDelegate
7
6
{
8
7
public
delegate
void
SubEventHandler();
9
8
10
9
public
abstract
class
Subject
11
10
{
12
11
public
event
SubEventHandler SubEvent;
13
12
14
13
protected
void
FireAway()
15
14
{
16
15
if
(SubEvent
!=
null
)
17
16
{
18
17
this
.SubEvent();
19
18
}
20
19
}
21
20
}
22
21
23
22
public
class
Cat : Subject
24
23
{
25
24
public
void
Cry()
26
25
{
27
26
this
.FireAway();
28
27
}
29
28
}
30
29
31
30
public
abstract
class
Observer
32
31
{
33
32
public
Observer(Subject sub)
34
33
{
35
34
sub.SubEvent
+=
new
SubEventHandler(sub_SubEvent);
36
35
}
37
36
38
37
public
abstract
void
sub_SubEvent();
39
38
40
39
}
41
40
42
41
public
class
Mouse : Observer
43
42
{
44
43
private
string
name;
45
44
public
Mouse(
string
name, Subject sub)
46
45
:
base
(sub)
47
46
{
48
47
this
.name
=
name;
49
48
}
50
49
51
50
public
override
void
sub_SubEvent()
52
51
{
53
52
54
53
}
55
54
}
56
55
57
56
public
class
Master : Observer
58
57
{
59
58
public
Master(Subject sub)
60
59
:
base
(sub)
61
60
{
62
61
63
62
}
64
63
65
64
public
override
void
sub_SubEvent()
66
65
{
67
66
68
67
}
69
68
}
70
69
}
71
70
72
73
74
75
76
77
posted on
2008-08-30 10:26
March.wang
阅读(
249
) 评论(
0
)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面
返回顶部