delegate是个类,委托也是个类,可以通过delegate来定义一个委托,然后通过委托声明一个委托变量(也称委托对象),而事件呢,它就是个对象!!通过反编译可以看到事件本身是一个私有的委托变量加上两个公有的方法,在公有方法中对这个私有的变量作赋值等操作。从而避免了在声明这个事件的类的外部去触发它(这个事件),也避免了赋值时候方法的覆盖。

如果不好理解的话可以对应的怎么理解,在类中声明一个私有的字段(private int age),那么用来声明这个字段的类型(比如int)可以类比委托,而和这个字段相关联的属性(public int Age{get;set;})Age类比事件,那么普通的委托变量呢可以理解为声明了一个公有的字段(private int age)的age。(虽然有点不准确,但是能帮助你更好的理解这几者之间的关系)

转载于:https://www.cnblogs.com/holong2003/archive/2013/05/21/3090694.html

c#中关于delegate、委托、事件之间的联系、关系相关推荐

  1. (转)C#中的委托(Delegate)和事件(Event)

    转自:http://blog.chinaunix.net/uid-576762-id-2733751.html 把C#中的委托(Delegate)和事件(Event)放到现在讲是有目的的:给下次写的设 ...

  2. docker中容器与宿主机之间的网络关系

    接上一篇jupter远程访问 docker中容器与宿主机之间的网络关系 一.PC上的网络关系 1.网卡的物理地址 网卡的物理地址(MAC地址):是网卡的唯一标识.由生产厂商写入网卡中.MAC地址就如同 ...

  3. ACL中的permit/deny与traffic policy中behavior的permit/deny之间是什么关系?

    ACL中的permit/deny与traffic policy中behavior的permit/deny之间是什么关系? ACL与traffic policy(流策略)经常组合使用.traffic p ...

  4. 转:终于会用c#中的delegate(委托)和event(事件)了

    第一个例子: public class DelegateTest {// 声明delegate对象 public delegate void CompareDelegate(int a,int b); ...

  5. C# 利用委托事件进行窗体间的传值

    引言: 窗体间传值是每个学习WinForm新手的常见问题,最初级的方法就是 在窗体中先获取到要接受值窗体.然后通过.得到某个空间或者属性,直接赋值,这个需要接收放的窗体属性或者空间必须是public ...

  6. 自发和诱发电生理活动之间的动态关系

    文章来源于微信公众号(茗创科技),欢迎有兴趣的朋友搜索关注. 自发的神经活动波动已被证明会影响感知.认知和行为结果的变化.然而,这些波动形成刺激诱发的神经活动的复杂电生理机制仍有待进一步探索.自发和诱 ...

  7. Delegate,Action,Func,匿名方法,匿名委托,事件

    一.委托Delegate 一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本的数据类型(或者没有参数),比如 [c-sharp] view plainco ...

  8. Delegate,Action,Func,匿名方法,匿名委托,事件 (转载)

    Delegate,Action,Func,匿名方法,匿名委托,事件 (转载) 一.委托Delegate 一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本 ...

  9. 【C#学习】delegate(委托) 和 event(事件)

    C# 中的委托(Delegate)类似于 C 或 C++ 中函数的指针.委托(Delegate) 是存有对某个方法的引用的一种引用类型变量.引用可在运行时被改变.在C#中方法不能作为参数直接传递,必须 ...

  10. ios中关于delegate(委托)的使用心得

    ios中关于delegate(委托)的使用心得 分类: iOS开发2012-05-15 10:54 34793人阅读 评论(9) 收藏 举报 iosuiviewtimerinterfaceprinti ...

最新文章

  1. linux双网卡驱动配置,linux网卡驱动安装、双网卡绑定
  2. Anaconda安装及第一个py程序
  3. java for循环排序_java编程问题。用两个for循环来把输入的整数从小到大排序。
  4. php 内置mail 包,配置php自带的mail功能
  5. java小项目实例,成功入职阿里
  6. c语言死循环中输入字符,如下代码,如果输入字符,为什么会造成死循环?
  7. 威胁情报 设备之外的安全能力
  8. Linux内核Makefile编译生成内核目标文件的过程
  9. 使用jquery 给span 赋值
  10. c++实现串口功能之termios.h头文件研读<二>
  11. C++实现双线性插值
  12. 正向代理与反向代理详解
  13. 龙芯CPU芯片架构分析
  14. git 不abandon的办法
  15. 基于标记的分水岭分割算法
  16. html5 图片羽化,html5+webgl仿ps羽化笔刷液态动画特效
  17. Mezzanine怎样为BLOG创建分级目录
  18. 入力できる文字数チェック
  19. php gd平涂,水彩画基本技法教学:平涂法
  20. Java数组(Array)

热门文章

  1. opencv中Mat与IplImage,CVMat类型之间转换
  2. github结合TortoiseGit使用sshkey,无需输入账号和密码
  3. [原创]简单即是美:QQ2009英文版
  4. 北京欢迎你 (歌词)
  5. win10iot 编程_使用DIY Blynk板对IoT按钮进行编程
  6. python 日志解决方案_日常Python问题的绝佳解决方案
  7. android开源2016_2016 Hacktoberfest点燃了开源的参与
  8. vs2017c#开源项目_2017年值得关注的开源项目
  9. (48)移动WEB开发基础
  10. JavaScript实现继承的几种方式