C#学习笔记:委托

参考书目:C#6.0学习笔记——从第一行C#代码到第一个项目设计(作者周家安)P92

学习目的:了解委托的概念

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Example3_13
{
    //定义一个委托
    public delegate void MyDelegate();
    class Program
    {
        static void Main(string[] args)
        {
            MyDelegate de = Method1;
            Test(de);
            //执行Test方法后重新调用委托
            de();
            Console.ReadKey();
        }

        //定义一个Test方法
        static void Test(MyDelegate d)
        {
            //调用委托
            if(d!= null)
            {
                d();
            }
            d = Method2;     //将委托改为与M2方法关联
                            //内部改变,不影响委托调用后的结果
        }

        //定义方法,以备委托调用
        static void Method1()
        {
            Console.WriteLine("调用方法1");
        }
        static void Method2()
        {
            Console.WriteLine("调用方法2");
        }
    }
}

运行结果如下:

发布了41 篇原创文章 · 获赞 1 · 访问量 878

猜你喜欢

转载自blog.csdn.net/qq_41708281/article/details/104243906