delegate与event的关系说明

delegate与event的关系类似于field与Property
(实事上前者就是field,或者我们可以把event看成是一种特殊的Property)
有些类似于Int或者Object类型,当我们只需event类型的时候,可以不必使用delegate。
由于EventHandler这个delegate已经在System命名空间下声明了,我们可以直接拿过来用。

【区别】
1. event不允许在声明它的class之外(即使是子类)被调用(除此之外只能用于+=或-=),而plain delegate则允许。
2. event不允许使用赋值运算符,而delegate则允许。
3. event可以直接在接口中使用。

posted on 2011-05-19 09:40  欣静赏悦  阅读(220)  评论(0编辑  收藏  举报