委托与事件的区别

  截止到目前为止,我很少使用事件,经常使用委托,但是我并不清楚事件存在的原因,或者说,委托和事件到底有什么区别?

  我在网上搜的一般情况下都会写委托是一个类,事件是委托的对象,但是用的时候会发现,

   执行出来完全一模一样,什么调用Invoke,什么Remove和-=,如果这就是区别,那事件存在的意义在哪里?

  马克思说过:存在即合理

  后来我又搜了一些博客,看了一下终于让我找到了我认为最本质的区

  区别主要在外部触发,事件是不允许的,具体看下边例子:

  

   事件ActEvent在外部只能出现在+=或者-=的左边,不能=或者调用执行,所以,event关键字有助于提高类的封装性,物理隔绝代码耦合,迫使类设计更追求高内聚。

温故知新,方便自己回顾使用
原文地址:https://www.cnblogs.com/zjka/p/12696160.html