它将方法当做另一个方法的参数进行传递

时间:2021-10-31 07:30:32

委托delegate也是一种类型,在任何可以声明类的处所都可以声明委托,它将要领当做另一个要领的参数进行通报,这样就可以通报差此外要领,完成差此外成果,使措施具有很好的可扩展性。

举例:

假设这里有一台电脑,有人会用它写措施,有人会用它打游戏,有人会用它看影戏,有人会用它边听音乐边玩游戏,,有人会用它边听音乐边看文档,边上QQ。

这台电脑可以抽象成一个类Computer,里面有个要领DoWork,所有的人都要通过这个要领来做本身的工作。

不用委托的时候我们可以实现一些固定的对象,不够灵活:

例如:


代码如下:


class Program {

static void Main(string[] args) {

Computer computer = new Computer();

computer.DoWork(“猪八戒”, “在看影戏!”);

computer.DoWork(“沙和尚”, “在写措施!”);

computer.DoWork(“孙悟空”, “在玩游戏!”);

}

}

public class Computer {

public void DoWork(string name, string work) {

Console.WriteLine(“{0}{1}”, name, work);

}

}