在c#中接口的實例可以引用實現了該接口的類。
如下:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace InterfaceTest { 8 interface IMyInterface { 9 void AMethod(); 10 } 11 class Test : IMyInterface { 12 public void AMethod() { 13 Console.WriteLine("Extends from IMyInterface"); 14 } 15 16 } 17 18 class Program { 19 static void Main(string[] args) { 20 IMyInterface a = new Test(); 21 a.AMethod(); 22 Console.ReadKey(); 23 } 24 25 } 26 }
執行結果輸出:
Extends from IMyInterface
目前已經知道的用處,如果實例化的接口引用繼承自同一個接口的不同的類,這個實例就可以調用這些類實現的該接口的所有方法。
如下:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace InterfaceTest { 8 interface IMyInterface { 9 void AMethod(); 10 } 11 class Test : IMyInterface { 12 public void AMethod() { 13 Console.WriteLine("Extends from IMyInterface in Test1"); 14 } 15 16 } 17 class Test2 : IMyInterface { 18 public void AMethod() { 19 Console.WriteLine("Extends from IMyInterface in Test2"); 20 } 21 22 } 23 24 class Program { 25 static void Main(string[] args) { 26 IMyInterface a = new Test(); 27 IMyInterface b=new Test2(); 28 a.AMethod(); 29 b.AMethod(); 30 Console.ReadKey(); 31 } 32 33 } 34 }
執行結果如下:
Extends from IMyInterface in Test1
Extends from IMyInterface in Test2
未完…