C# 事件(事件访问器)
事件访问器
本章介绍的最后一个主题是事件访问器。之前提到过,事件只能许+=和-=运算符。这两个运
算符有定义良好的行为。
然而,我们可以修改这两个运算符的行为,在使用它们时让事件执行任何我们希望执行的自
定义代码。但这是高级主题,所以我们只简单介绍,不会深入探究。
要改变这两个运算符的操作,必须为事件定义事件访问器。
- 有两个访问器:add和remove。
- 声明事件的访问器看上去和声明一个属性差不多。
下面的示例演示了具有访问器的事件声明。两个访问器都有叫作value的隐式值参数,它接
受实例或静态方法的引用。
public event EventHandler CountedADozen
{add{... //执行+=运算符的代码}remove{... //执行-=运算符的代码}
}
声明了事件访问器之后,事件不包含任何内嵌委托对象。我们必须实现自己的机制来存储和
移除事件注册的方法。
事件访问器表现为void方法,也就是不能使用返回值的return语句。