C#委托、多播委托极简案例,一看就懂
废话不多讲,直接上代码,看完代码再讲解;
class Class1 { public delegate void Del();//声明委托 public static void F1() { Console.WriteLine("第一个方法"); } public static void F2() { Console.WriteLine("第二个方法"); } public static void F3() { Console.WriteLine("第三个方法"); } public static void Main() { Del del = F1;//实例化委托,并添加一个方法 del += F2; del += F3;//添加多个方法,成为多播委托 del();//运行委托,相当于运行了3个方法 Console.Read(); } }
运行结果
委托的本质:
- 箱子:委托相当于一个容器,比如一个箱子,里面可以放很多苹果,搬走一个箱子,就拥有了很多苹果;
- 糖葫芦:委托相当于糖葫芦中间的竹签子,串一颗山楂就是单播委托,串一串山楂就是多播委托;拿着竹签子,就相当于可以从头到尾一颗颗享受山楂的美味;
- 铁链子:多播委托也叫方法链子,先后绑定的方法像链条一样,一节一节的,按照添加顺序依次执行;