委托、反射、事件

委托:简单的说,委托是一种方法容器,也可以理解为指向一个函数的指针,它可以把一个方法作为参数带入另一个方法

委托本质是一个密封类
事件是委托对象的封装
事件的本质:event会自动生成一个private delegate变量和两个函数: add和remove

反射:反射提供了封装程序集、模块和类型对象,它能够动态的创建类型的实例,设置现有对象的类型或者获取现有对象的类型,能调用类型的方法和访问类型的字段属性,它是在运行时创建和使用类型实例。

委托和事件没有可比性,因为委托是类型,事件是对象,事件的内部使用委托实现的。因为对于事件来讲,外部只能"注册自己+=、注销自己-=",外界不可以注销其他的注册者,外界不可以主动触发事件,因此如果用Delegate就没法进行上面的控制。因此诞生了事件这种语法。事件只能add、remove自己,不能赋值。

事件的作用与委托变量一样,只是功能上比委托变量有更多的限制。(比如:1.只能通过+=或-=来绑定方法(事件处理程序)2.只能在类内部调用(触发)事件

转载于:https://www.cnblogs.com/xiaoweigogo/p/7799039.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值