一.委托
(1)定义:
C#中的委托(Delegate)类似于C或C++中函数的指针。委托(Delegate)是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变。
委托(Delegate)特别用于实现事件和回调方法。所有的委托(Delegate)都派生自 System.Delegate 类。
总结:委托可以理解为一种数据类型,这种类型赋值需要赋一个与之对应的方法
(2)委托的分类:
有返回值
无返回值
(3)委托的声明:
委托声明决定了可由该委托引用的方法。委托可指向一个与其具有相同标签的方法。
如何介绍委托:MyDelegate委托指向一个void返回类型的具有一个string和一个int类型参数的方法
(4)委托的赋值:
由委托的声明决定了可给当前委托赋值的方法类型
通过以上委托,知道必须使用一个无返回值,并且参数列表是string,int类型的一个方法方可赋予这个委托
namespace _01_委托
{
class Program
{
delegate void MyDelegate(string s,int i); //定义一个委托
static void Main(string[] args)
{
MyDelegate my = MySere;
my("张三", 30);
Console.ReadLine();
}
static void MySere(string s, int i)
{
Console.WriteLine(s+"的年龄是:"+i);
}
}
}
(5) 委托的使用
委托的调用其实就是他所指向的方法的一个调用执行,因此委托的执行也是小括号一对,按照参数填写
(6)实例化委托
一旦声明了委托类型,委托对象必须使用new关键字来创建,且与一个特定的方法有关。当创建委托时,传递到new语