C# 委托笔记
委托声明
<修饰符> delegate <返回值类型> <委托的名字> <参数列表>
例如
public delegate void bug();
参数可有可无根据自己说的情况而定
class Program
{
public delegate string bug(string s); //定义一个公开类型的 返回时是字符串相的,有参数的委托;委托只能放到方法的外部
static void Main(string[] args)
{
bug myDelegate = new bug(MrZhang.BuyTicket); //实例化委托,说明委托是干什么的,
//这的委托是委托调用MrZhang类的BuyTicket方法
Console.WriteLine(myDelegate("每次都让我去买1111"));//传递参数并返回
}
}
public class MrZhang
{
public static string BuyTicket(string s)
{
return s;
}
public void BuyMoveTicket()
{
Console.WriteLine("买完还让我带回去");
}
}
}
从此处可以看出委托的两个特点
1.委托可以把方法当作参数一样进行调用
2.委托只能调用静态方法
3.委托和类,接口一个等级的,委托定义不能放到方法的内部