CSharp - 不实现继承的抽象成员错误,但基类确实实现了

  显示原文与译文双语对照的内容

获取 C# 中的编译错误,表示子类没有实现继承的抽象数据成员。

结构本质上是这样的:


public abstract class Transaction
{
 public abstract int MyMethod();
}

public abstract class GeneralTransaction : Transaction
{
 public override int MyMethod()
 {
 return 1;
 }
}

public class SpecificTransaction : GeneralTransaction
{
}

这是说SpecificTransaction不是实现,但是为什么它必须? GeneralTransaction类实现它,并且SpecificTransaction类从该类继承?

时间: 原作者:

我是 affraid,你的结构比这更复杂。 本示例工作正常。


class Program
{
 static void Main(string[] args)
 {
 var tr = new SpecificTransaction();
 Console.WriteLine(tr.MyMethod());//shows 1
 }
}

public abstract class Transaction
{
 public abstract int MyMethod();
}

public abstract class GeneralTransaction : Transaction
{
 public override int MyMethod()
 {
 return 1;
 }
}

public class SpecificTransaction : GeneralTransaction
{
}

原作者:
...