顯示實現介面的作用:解決方法重名問題。 下麵例子中,Student類同時繼承了兩個介面,但兩個介面有一個共同名稱的方法(有不同的功能),實現介面時只能實現一個,想兩個都實現就用顯示實現介面。 顯示實現介面: 顯示介面沒有訪問修飾符,預設私有的,顯示介面實現時是:介面名.方法名 因為顯示實現介面預設是 ...
顯示實現介面的作用:解決方法重名問題。
下麵例子中,Student類同時繼承了兩個介面,但兩個介面有一個共同名稱的方法(有不同的功能),實現介面時只能實現一個,想兩個都實現就用顯示實現介面。
class Program { static void Main(string[] args) { Student student = new Student(); student.Fly(); } } public interface IFace2 { void Fly(); } public interface IFace1 { void Fly(); } public class Student : IFace1,IFace2 { public void Fly() { Console.WriteLine("IFace1的實現"); } }
顯示實現介面:
class Program { static void Main(string[] args) { Student student = new Student(); student.Fly(); IFace2 face2 = new Student(); face2.Fly(); } } public interface IFace2 { void Fly(); } public interface IFace1 { void Fly(); } public class Student : IFace1,IFace2 { public void Fly() { Console.WriteLine("IFace1的實現"); } void IFace2.Fly() { Console.WriteLine("IFace2的實現"); } }
顯示介面沒有訪問修飾符,預設私有的,顯示介面實現時是:介面名.方法名
因為顯示實現介面預設是private,所以用介面變數來調用。