About delegate....

什么是委托?
--新华字典--
1.亦作"委托"。
2.将自己的事务嘱托他人代为处理。
3.交结,结纳。
4.犹依托,依靠。

- -! 我觉得在.NET中委托的解释应该选第二个

 

 

 1namespace AboutDelegate
 2{
 3    class Program
 4    {
 5        //我叫委托,我啥也不会,只会指挥别人干活
 6        //我手下的人必须跟我一个思路听我指挥,否则我不聘用他 --参数类型,返回值类型与委托一致 
 7        public delegate void MyDelegate(string str);
 8
 9        //我的员工A 
10        static void EmployeeA(string task)
11        {
12            Console.WriteLine(task + "完成了,我是员工A");
13        }

14        //员工B 
15        static void EmployeeB(string task)
16        {
17            Console.WriteLine(task + "完成了,我是员工B");
18        }

19        //员工C 
20        static void EmoloyeeC(string task)
21        {
22            Console.WriteLine(task + "没完成,老子辞职不干了!");
23        }

24
25
26        //我的工作单位Main 
27        static void Main(string[] args)
28        {
29            //Boss让MyDelegate把厕所刷了  MyDelegate把任务移交给了EmployeeA
30            MyDelegate taskA = new MyDelegate(EmployeeA);
31            taskA("刷厕所");
32            //Boss让MyDelegate把电冰箱修好 
33            MyDelegate taskB = new MyDelegate(EmployeeB);
34            taskB("修电冰箱");
35            //Boss让MyDelegate找出拉登来 
36            MyDelegate taskC = new MyDelegate(EmoloyeeC);
37            taskC("出现吧!拉登!");
38
39 
40
41            Console.WriteLine("\n--------------集体任务!(串联)囧---------------");
42            MyDelegate task = taskA + taskB + taskC;
43            task("打豆豆!");
44            //MyDelegate辞掉了C 
45            task -= taskC;
46
47
48            Console.WriteLine("\n---------------员工C被开除之后-----------------");
49            //执行 
50            task("打豆豆!");
51            Console.ReadLine();
52        }

53    }

54}

55

 

posted @ 2009-06-12 23:10  安静的瞬间  阅读(205)  评论(2)    收藏  举报