1. 委托与事件

什么是委托?委托有什么作用?

  • 委托本质上是一个类,它定义了方法的返回值与参数列表。
  • 委托的作用是可以将方法当作另一个方法的参数来进行传递。通俗的讲,委托就是用来执行方法(函数)的一个东西。

能被委托代理的方法有什么限制?

  • 被委托代理的方法,必须与最初委托声明时的返回值类型和参数列表相同。

什么是多播委托?

  • 包含多个方法的委托就被称为多播委托。
  • 通过调用多播委托,可以按顺序连续调用被包含的方法。

基于多播委托的特性,委托的签名通常只返回void,这是为什么?

  • 因为调用多播委托,会调用其包含的多个方法,如果这些方法具有返回值,那么就只能得到委托调用的最后一个方法。

简述事件的发布-订阅模型。

  • 事件在类中声明且生成,且通过使用同一个类或其他类中的委托与事件处理程序关联。
  • 包含事件的类用于发布事件,这被称为发布器类;其他接受该事件的类被称为订阅器类。
  • 事件使用发布-订阅模型。
  • 发布器是一个包含事件和委托定义的对象,事件件和委托之间的联系也定义在这个对象中。发布器类的对象调用这个事件,并通知其他的对象。
  • 订阅器是一个接受事件并提供事件处理程序的对象。在发布器类中的委托调用订阅器(subscriber)类中的方法(事件处理程序)。

简述定义和使用事件的步骤。

  1. 创建发布器类
  2. 声明一个委托微型
  3. 根据委托类型定义事件
  4. 定义一个方法来引发事件
  5. 创建发布器类或事件处理程序
  6. 实例化发布器类
  7. 关联发布器实例是事件与事件处理程序
  8. 触发事件

你可能感兴趣的:(1. 委托与事件)