您的位置:首页 > 其它

(第三季)210-事件

2016-04-30 11:42 253 查看
事件

事件(event)基于委托,为委托提供了一个发布/订阅机制,我们可以说事件是一种具有特殊签名的委托。

什么是事件?

事件(Event)是类或对象向其他类或对象通知发生的事情的一种特殊签名的委托.

事件的声明

public event 委托类型 事件名;

事件使用event关键词来声明,他的返回类值是一个委托类型。

通常事件的命名,以名字+Event 作为他的名称,在编码中尽量使用规范命名,增加代码可读性。

为了更加容易理解事件,我们还是以前面的动物的示例来说明,有三只动物,猫(名叫Tom),还有两只老鼠(Jerry和Jack),当猫叫的时候,触发事件(CatShout),然后两只老鼠开始逃跑(MouseRun)。接下来用代码来实现。(设计模式-观察者模式)

using System;
namespace CatCry
{
class Program
{
public delegate void MyDelegate();
//public MyDelegate mydelegate;  // 声明了一个委托类型的变量, 作为类的成员
//
public event MyDelegate mydelegate;  // 事件的申明只能作为类里面的成员来使用,使用方法和委托一样
//
static void Main(string[] args)
{
Program p = new Program();
p.mydelegate = Test1;
p.mydelegate();
//
Console.ReadKey();
}

static void Test1()
{
Console.WriteLine("test1");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: