C#中委托的基本概念介绍

最近在看深入理解C#,发现这是一本很不错的书,将很多C#的知识点联系了起来,更像是一本C#历史书,从C# 1一步步介绍到C# 4。

所以准备一边看,一边整理读书笔记。那么就先从委托开始。

委托是C#中一个非常重要的概念,从C# 1开始就有了委托这个核心概念,在C# 2和C# 3中委托又有了很多改进。

通过委托,我们可以将一个方法当作对象封装起来,并且在运行时,我们可以通过这个对象来完成方法的调用。

委托的使用

首先,来个简单的例子,苹果只负责设计iphone,而把组装iphone的工作委托给富士康做。

class Apple

{

    //声明委托类型

    public delegate void AssembleIphoneHandler();

    public AssembleIphoneHandler AssembleIphone;

    public void DesignIphone()

    {

        Console.WriteLine("Design Iphone By Apple");

    }

}

class Foxconn

{

    //与委托类型签名相同的方法

    public void AssembleIphone()

    {

        Console.WriteLine("Assemble Iphone By Foxconn");

    }

}

class Program

{

    static void Main(string[] args)

    {

        Apple apple = new Apple();

        Foxconn foxconn = new Foxconn();

        //创建委托实例

        apple.AssembleIphone = new Apple.AssembleIphoneHandler(foxconn.AssembleIphone);

        apple.DesignIphone();

        //委托实例的调用

        apple.AssembleIphone();

        //通过Invoke进行显示调用

        //apple.AssembleIphone.Invoke();

        Console.Read();

    }

}

以上是 C#中委托的基本概念介绍 的全部内容, 来源链接: utcz.com/z/340561.html

回到顶部