은 내가 인터페이스전화는
interface ISampleInterface
{
void SampleMethod();
}
및
public class ImplementationClass : ISampleInterface
{
// Explicit interface member implementation:
public virtual void SampleMethod()
{
Console.WriteLine("Base");
}
}
public class derived : ImplementationClass
{
public override void SampleMethod()
{
Console.WriteLine("child");
}
}
가 지금은 사용자가 파생 만드는 경우 파생 클래스에서 SampleMethod
를 호출 할 인터페이스에서 상속 된 클래스가 존재한다 클래스가 아닌 경우 기본 클래스 인 ImplementationClass
에서 호출합니다. 기본적으로 런타임에 날씨 클래스를 파생 클래스로 결정해야합니다. 예를 들어 SampleMethod
구현과 함께 존재하고 다른 호출은로 전화하십시오..
개체가'derived' 인스턴스 인 경우'SampleMethod'를 호출하면'derived'에서 해당 개체를 호출합니다. 코드에서 현재 수행하지 않는 작업을 명확하게 설명해 주시겠습니까? –
또한 "명시 적 인터페이스 멤버 구현"이라고 말한 메모로서 실제로 암시 적으로 구현했습니다. – Chris
Derived 클래스에서 SampleMethod를 호출하려고합니다. 파생 클래스가 다른 모듈에 의해 작성되었으므로 파생 클래스가 존재하는지 날씨를 확인해야합니다. 호출 파생 된 메서드가있는 경우 기본 마스트를 호출합니다. –