小编jon*_*not的帖子

.net抽象覆盖怪癖

假设我有以下c#类:

abstract class a
{
    protected abstract void SomeMethod();
}

abstract class b : a
{
    protected abstract override void SomeMethod();
}

class c : b
{
    protected override void SomeMethod()
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

实际上是否有任何一点可以覆盖b中的方法,因为它可以很容易地被写为:

abstract class b : a
{
}
Run Code Online (Sandbox Code Playgroud)

写作b的"首选"方式是什么?如果没有重写覆盖抽象方法或属性的原因,为什么允许它?

.net c#

3
推荐指数
1
解决办法
1019
查看次数

标签 统计

.net ×1

c# ×1