1、委托引用多个方法,称为多播委托,委托也可以包含多个方法,使用多播委托可以按照顺序调用多个方法 ,多播委托只能得到调用的最后一个方法的结果。, 1.1 class Program { static void Method1() { Console.WriteLine(“Method1方法被调用了!”); } static void Method2() { Console.WriteLine(“Method2方法被调用了!”); } static void Main(string[] args) { Action a = Method1; a += Method2;//表示添加一个委托的引用 // a-=Method1;//减掉Method1方法。 // a-=Method2;//减掉Method2方法。 a();//当一个委托没有指向任何方法的时候,调用的话会出现异常null! Console.ReadKey(); } }
1.2运行结果: 1.4取得多播委托中的所有方法的委托: class Program { static void Method1() { Console.WriteLine(“Method1方法被调用了!”); } static void Method2() { Console.WriteLine(“Method2方法被调用了!”); } static void Main(string[] args) { Action a = Method1; a += Method2; Delegate[] dele= a.GetInvocationList(); foreach (Delegate item in dele) { item.DynamicInvoke(); } Console.ReadKey(); } } 1.5运行结果: