第9章代表和事件 9.1代表 9,2事
1 第9章 代表和事件 9.1 代表 9.2 事件
9.1.1代表的声明与使用 令代表是一种引用数据类型,其作用相当于 C/C++语言中的函数指针 代表实际上是定义了一个派生于 System. Delegate的类。 令使用代表的程序结构是: (1)声明一个代表 (2)代表的实例化。 (3)使用代表
2 9.1.1 代表的声明与使用 ❖ 代表是一种引用数据类型,其作用相当于 C/C++语言中的函数指针。 ❖ 代表实际上是定义了一个派生于 System.Delegate的类。 ❖ 使用代表的程序结构是: (1)声明一个代表。 (2)代表的实例化。 (3)使用代表
1.代表的声明 令代表的声明格式为: 特征][修饰符] delegate返回类型代表名([参数 表]); 代表并不知道也不关心它所引用的对象类, 任何对象都可以,只要方法的参数类型以 及返回类型(即方法的签名)与代表中的 类型相匹配即可 2.代表的实例化 其格式为: neW代表名(表达式); 其中,表达式可以是三种类型:静态方法、 实例方法和其他的代表对象
3 1.代表的声明 ❖ 代表的声明格式为: [特征] [修饰符] delegate 返回类型 代表名([参数 表]); ❖ 代表并不知道也不关心它所引用的对象类, 任何对象都可以,只要方法的参数类型以 及返回类型(即方法的签名)与代表中的 类型相匹配即可。 2.代表的实例化 ❖ 其格式为: new 代表名(表达式); ❖ 其中,表达式可以是三种类型:静态方法、 实例方法和其他的代表对象
3.代表的调用 今代表对象的调用规则与直接使用它所封装 的方法一致,代表对象名被当作是方法名 使用,然后提供封装方法所需要的参数。 4.代表的 callback方法(回调方法) callback方法用于许多目的,其中最常 用的有: 异步处理 把用户代码放入一个类的代码路径中
4 3.代表的调用 ❖ 代表对象的调用规则与直接使用它所封装 的方法一致,代表对象名被当作是方法名 使用,然后提供封装方法所需要的参数。 4.代表的callback方法(回调方法) callback方法用于许多目的,其中最常 用的有: ❖ 异步处理 ❖ 把用户代码放入一个类的代码路径中
9.1.2多重代表 冷多重代表( multicast delegate)即通过一个 代表调用两个或更多实现方法。 任何返回值为vod的代表都是多重代表 令多重代表具有创建方法链表的能力。 方法链表中的方法必须具有相同的参数,而 且这些方法的返回类型必须定义为void
5 9.1.2 多重代表 ❖ 多重代表(multicast delegate)即通过一个 代表调用两个或更多实现方法。 ❖ 任何返回值为void的代表都是多重代表。 ❖ 多重代表具有创建方法链表的能力。 ❖ 方法链表中的方法必须具有相同的参数,而 且这些方法的返回类型必须定义为void