event与delegate 区别

event与delegate 区别

   无意在网上看到有人在讨论这两个的区别,以前一直都没注意过,粗一问还真的不知道到底有啥区别?
于是GOOLGE了一下,发现网上讨论这两上的还真不少。甚至有人拿他去做了面试题。我在想如果我面试的时候考官问这道题,我到还真答不上来。不过这并不妨碍俺用他,这个考官是不是有点太钻针角了(题外话)
  看了这么久,粗略的来说。其时Event和Delegate其时没区别。因为Event其时就象是Deletgate的扩展。有人通俗的说,Event和Delegate 的区别有于字段和字属性区别。
  比如:你定义了一个字段private int field 然后你在给他做get,set这样让他成为一个属性。。而用他们为event和Delegate做个不是很合适的类比。Delegate就相当于那个field。而Event就相当于他的属性。其时Evnet就是一个受限的Delegate。。

   明天仔细阅读了Jeffrey Richter的书了在仔细研究下

你可能感兴趣的:(面试)