c# - 没有抽象方法实现的抽象派生类

标签 c# abstract-class

假设我有一个类:

public abstract class BaseClass
{
   internal abstract void Add(int i , int j);
}

子类为:

public class Child : BaseClass
{

}

因为我从 BaseClass 继承 Child 类,所以我应该在其中实现 Add() 方法 但我不想在这里实现 Add 方法,这可能吗?如果可能,我该如何实现?

提前致谢

最佳答案

如果您不想实现该方法,您可以执行以下操作:

  1. 也将 Child 标记为抽象:

    public abstract class Child : BaseClass { }
    
  2. 或者,将方法设为虚拟:

    public abstract class BaseClass 
    {
        internal virtual void Add(int i , int j) { }
    }
    
  3. 或者,覆盖该方法并使其成为虚拟方法:

    public abstract class Child : BaseClass
    {
        // Empty method does nothing; also could be overridden.
        internal override void Add(int i , int j) { } 
    }
    

关于c# - 没有抽象方法实现的抽象派生类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25970848/

相关文章:

c# - C# 中的谷歌浏览器框架?

c# - 是否有适用于 .NET 的 OK 图像识别库?

c# - 使用标题列表,用于切换

java - 从抽象类继承静态变量

c++ - 在 C++ 中的抽象接口(interface)上实现运算符重载

c# - 获取 Windows 服务的禁用状态

c# - 使用 C#.NET 时如何防止在 MySQL 中插入问号 (???)?

Java抽象类和泛型

scala - 抽象类和特征之间的区别

c# - 非抽象 C# 类中的无主体构造函数