标签:
关于委托自己在工作中很少遇到,渐渐的觉得不是很重要,但在笔试中有经常被考到,所以翻了写资料查看了一下,委托顾名思义就是叫把事情交给别人做,我会以一个故事的方式阐述委托是什么。
我這里有两个人
PMWang
//1.0老王打算增加一台电脑 private int _num = 1; public void BuyComputer(){ //2.0可是没时间啊!叫小李去买? Console.WriteLine("小李去买个一台电脑"); //5.0叫小李去买 buyDelegate(_num); } //3.0老王打算叫小李去买 这里就定义了一个委托 public delegate void LetLiBuyComputer(int num); //4.0声明这个委托 public LetLiBuyComputer buyDelegate;
SELi
//小李有个买电脑的方法 public void BuyComputer(int num) { Console.WriteLine("好的!"); Console.WriteLine("出门"); Console.WriteLine("乘车"); Console.WriteLine("购买到一台电脑"); Console.WriteLine("回公司"); Console.WriteLine("李:王经理我买来一天电脑"); }
Main()
static void Main(string[] args) { //1.0老王来了 PMWang wang = new PMWang(); //2.0小李也到了 SELi li = new SELi(); //4.0老王的委托 先看3.0好理解这个委托过程 注:编程中不能改变 wang.buyDelegate = new PMWang.LetLiBuyComputer(li.BuyComputer); //3.0老王买电脑 wang.BuyComputer(); Console.Read(); }
当执行wang.BuyComputer()调用老王买电脑,老王并不想去执行买电脑的一系列过程就委托给小李,小李中的BuyComputer()才是执行买电脑的动作。这就是委托执行的买电脑方法,动作的执行者是小李的BuyComputer()。
标签:
原文地址:http://www.cnblogs.com/RianNoRrac/p/4337732.html