委托鏈、多路廣播委托:也就是把多個委托鏈接在一起,我們把鏈接了多個方法的委托稱為委托鏈或多路廣播委托
例:
1 class HelloWorld 2 { 3 //定義委托類型 4 delegate void DelegationChain(); 5 static void Main(string[] args) 6 { 7 //用靜態方法來實例委托 8 DelegationChain mydelegateone=new DelegationChain(HelloWorld.Fun2); 9 //用實例方法來實例委托 10 DelegationChain mydelegatetwo=new DelegationChain(new HelloWorld().Fun1); 11 //定義一個委托對象初始化為null 12 DelegationChain delegationChain=null; 13 //使用‘+鏈接委托,鏈接后就成了委托鏈 14 delegationChain+=mydelegateone; 15 delegationChain+=mydelegatetwo; 16 //調用委托鏈 17 delegationChain(); 18 Console.ReadKey(); 19 } 20 private void Fun1() 21 { 22 Console.WriteLine("Fun1"); 23 } 24 private static void Fun2() 25 { 26 Console.WriteLine("Fun2"); 27 } 28 }
運行結果:
?