委托定义(delegate)

委托定义

委托(delegate)类型和类相似,也是一种引用类型,有委托类型定义委托对象(简称委托),委托与C/C++中的函数指针相似,不同的是,委托是面向对象的、类型安全的和保险的。一旦为委托分配了方法,委托将与改方法具有完全相同的行。委托的使用可以向其他任何方法一样,具有参数和返回值。

委托实例可以封装可调用试题的方法,通过委托可以间接地调用一个方法(实例方法或静态方法都可以)。

特点:

  • 委托类似与C/C++函数指针,但它的类型安全
  • 委托允许将方法作为参数进行传递
  • 委托可以用于定义回调方法
  • 委托可以将多个方法关联在一起
  • 委托所指向的方法不需要与委托签名精确匹配

委托类Delegate是密封的,不能从Delegate类中派生委托类型,也不可能从中派生自定义类

一、声明委托类型
即告诉编译器这种类型代表了那种类型的方法,使用以下语法声明委托类型:

[修饰符] delegate 返回类型 委托类型名(参数列表);

例如:private delegate void myDelegate(int n); //声明委托类型,int作为参数并返回void的方法

二、实例化委托对象
在声明了委托类型后,必须创建一个它的实例,即创建委托对象并使之与特定的方法关联:

委托类型 委托对象名 = new 委托类型名(静态方法或实例方法);

猜你喜欢

转载自blog.csdn.net/weixin_42676530/article/details/105738638