委托、事件和接口

委托

1.委托可以认为是一个或多个方法的对象。

2.委托:delegate,ref,out,params,Lambda表达式(->运算符)

    委托是一种类型

3.声明委托类型,创建委托变量,初始化委托变量(使用new运算符或快捷语法),组合委托,添加和删除委托方法(+=,+-运算符),调用委托

   调用带返回值的委托,调用带引用参数的委托(ref:引用参数的值会在调用间发生变化)

4.具名方法:使用静态方法或实例方法来初始化委托

   匿名方法:在初始化委托时内敛声明的方法

   在匿名方法实现代码的外部变量称为方法捕获

1.发布者,订阅者,事件处理程序,触发事件

 2.源代码组件:委托类型声明,事件处理程序声明,事件声明,事件注册,触发事件代码

 

声明事件

 1 namespace A
 2 {
 3    class Incrementer
 4    {
 5         public  event   EventHandler CountedADozen;
 6         //      关键字     委托类型       事件名
 7         public event EventHandler MyEvent1, MyEvent2, MyEvent3;
 8 
 9         public static event EventHandler CountedAdozen;
10 
11    }
12 }

事件是成员,它和方法和属性一样,是类或结构的成员

订阅事件:

 触发事件

原文地址:https://www.cnblogs.com/krystalstar/p/9698628.html