继承类的规则

时间:2012-02-17 09:47:11

标签: c# inheritance

我可以为继承我的基类的类设置规则。例如。 Person : BaseClass,我希望Person实施iSomeKindOfInterface,如果Person未实现该接口,则不允许继承BaseClass

我知道这可以在通用基类中找到,您可以执行以下操作

public BaseClass<T>
     where T : iSomeKinfOfInterface

2 个答案:

答案 0 :(得分:10)

您可以在基类中实现该接口,并强制继承类提供实现:

public interface ISomeInterface
{
    void DoSomething();
}

public abstract class BaseClass : ISomeInterface
{
    public abstract void DoSomething();
}

public class Person : BaseClass
{
    public override void DoSomething()
    {
        ...
    }
}

答案 1 :(得分:2)

将您的班级声明为

abstract BaseClass : ISomeKinfOfInterface