저는 C#과 OOP에 상당히 익숙하며, 상속에 관한 질문이 있습니다. 하나의 오버로드 된 메소드 상속
내가 가진 말 :public abstract class Command
{
protected Command()
{
}
public abstract string Execute();
public abstract string Execute(object o);
}
public class CommandA : Command
{
public override string Execute()
{
}
}
public class CommandB : Command
{
public override string Execute(object o)
{
}
}
이 CommandA
가 Execute()
을 구현하지 Execute(object o)
및 CommandB
을 구현하지에 의한 명백한 오류가 있습니다.
제 질문은 이러한 오류를 피하기 위해 구현해야하는 코드가 있는지 여부입니다. 빈 메소드가 허용됩니까?
기본 클래스 (다른 클래스에서 상속받은 클래스)는 다른 클래스가 공유하는 메서드 만 정의해야합니다. – EpicKip
아마도'public abstract string Execute (object o = null);'? –
아니요. 추상 클래스의 추상 메소드를 대체해야합니다. 기본 클래스를 추상으로 사용하지 않도록하십시오. – Manoj