委托是一种带有签名的类,需要用复合这个签名的静态函数或者非静态函数来初始化,就像楚怀王说:"先入秦关者望之"。此时还不知道谁会先入秦观,可能是刘邦,可能是项羽。等到时间发展到一定时机,结论出来了,这个事委托给刘邦了。前提是刘邦复合这个签名,先入秦关了。
事件和委托类似,只不过事件源于委托,声明的时候需要先定义一个委托类型。也就是委托和类同级,事件和类里的属性方法同一个级别。事件只能在定义该事件的类里被初始化和使用,除了+=和-=。而委托无此限制。事件更形象化,就像,反秦起义这个事件爆发了,触发了刘邦入秦关,然后项羽也入秦关这一系列处理。
delegate void
MyDelegate();//-----------------0
MyDelegate
aDelegare;//-----------------------1
event MyDelegate
aEvent;//-------------------2
0行相当于下面的代码
class
MyDelegare:Delegate{//这段代码从来都是由系统自动生成,不可以手动写
}
上面代码1和2行中的
aDelegate 和aEvent
是一样的!
委托事件的理解
时间: 2024-09-30 15:36:44