张德长

导航

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();
        }
    }

运行结果

 

 

委托的本质:

  • 箱子:委托相当于一个容器,比如一个箱子,里面可以放很多苹果,搬走一个箱子,就拥有了很多苹果;
  • 糖葫芦:委托相当于糖葫芦中间的竹签子,串一颗山楂就是单播委托,串一串山楂就是多播委托;拿着竹签子,就相当于可以从头到尾一颗颗享受山楂的美味;
  • 铁链子:多播委托也叫方法链子,先后绑定的方法像链条一样,一节一节的,按照添加顺序依次执行;

 

posted on 2022-03-05 18:26  张德长  阅读(134)  评论(0编辑  收藏  举报