c# - 如何强制子类实现一个方法

标签 c# oop inheritance

我正在创建一个对象结构,我希望强制所有基类的子类实现一个方法。

我能想到的唯一方法是:

  1. 一个抽象类 - 可以工作,但基类有一些有用的辅助函数,这些函数会被一些子类使用。

  2. 接口(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/

相关文章:

C#继承帮助

java - 查找对象引用

c++ - 为什么我的 vector 没有随着我对其元素所做的更改而更新?

php - 理解传递对象/值的 OOP 原则

java - Hibernate: OneToOne: 同一类型的两个字段

list - 列出 Rust 中的不同类型

c# - Azure 存储将 blob 移动到其他容器

c# - 何时在线程安全锁定代码中使用 'volatile' 或 'Thread.MemoryBarrier()'? (C#)

c# - 为什么通过成对执行计算来计算连续整数数组的乘积会更快?

java - 为什么要使用继承?