我正在创建一个对象结构,我希望强制所有基类的子类实现一个方法。
我能想到的唯一方法是:
一个抽象类 - 可以工作,但基类有一些有用的辅助函数,这些函数会被一些子类使用。
接口(interface) - 如果仅应用于基类,则子类不必实现只有基类实现的功能。
这可能吗?
注意这是一个 .NET 2 应用程序。
最佳答案
您可以在一个类中拥有抽象方法以及其他已实现的方法。与接口(interface)相比的优势在于,您可以在类中包含一些代码,并强制新对象填充抽象方法的详细信息。
public abstract class YourClass
{
// Your class implementation
public abstract void DoSomething(int x, int y);
public void DoSomethingElse(int a, string b)
{
// You can implement this here
}
}
关于c# - 如何强制子类实现一个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1771741/