Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

인터페이스의 암시적 구현은 무엇이며 C#에서 인터페이스의 암시적 구현은 언제 사용합니까?

<시간/>

C# 인터페이스 멤버는 명시적으로 또는 암시적으로 구현할 수 있습니다.

암시적 구현은 멤버 이름 앞에 구현되는 인터페이스의 이름을 포함하지 않으므로 컴파일러가 이를 유추합니다. 멤버는 공개로 노출되며 개체가 구체적인 유형으로 캐스팅될 때 액세스할 수 있습니다.

메서드 호출도 다르지 않습니다. 클래스의 개체를 만들고 호출하기만 하면 됩니다.

여러 인터페이스에 동일한 메서드 이름이 선언되어 있으면 암시적 인터페이스를 사용할 수 없습니다.

interface ICar {
   void displayCar();
}
interface IBike {
   void displayBike();
}
class ShowRoom : ICar, IBike {
   public void displayCar() {
      throw new NotImplementedException();
   }
   public void displayBike() {
      throw new NotImplementedException();
   }
}
class Program {
   static void Main() {
      ICar car = new ShowRoom();
      IBike bike = new ShowRoom();
      Console.ReadKey();
   }
}