委托的简单调用

  class Program
    {
        static void Main(string[] args)
        {
            //定义三个委托变量
            MyDelegate d1, d2, d3,d4;
            //变量关联方法
            d1 = TestMethod1;
            d2 = TestMethod2;
            d3 = TestMethod3;
            d4 = TestMethod1;
            d4 += TestMethod2;
            d4 += TestMethod3;
            //调用三个委托实例
            d1("d1");
            d2("d2");
            d3("d3");
            Console.WriteLine("调用d4");
            d4("d4");
            //移除方法
            Console.WriteLine("移除方法");
            d4 -= TestMethod2;
            d4("d4");
            Console.ReadKey();
        }
        static void TestMethod1(string str)
        {
            Console.WriteLine($"这是方法一.参数:{str}");
        }
        static void TestMethod2(string str)
        {
            Console.WriteLine($"这是方法二.参数:{str}");
        }
        static void TestMethod3(string str)
        {
            Console.WriteLine($"这是方法三.参数:{str}");
        }
        public delegate void MyDelegate(string s);
    }

猜你喜欢

转载自www.cnblogs.com/jimtang/p/8978458.html