gpt4 book ai didi

c# - 为什么抽象类不能有密封方法

转载 作者:太空宇宙 更新时间:2023-11-03 18:02:23 25 4
gpt4 key购买 nike

<分区>

Code Snippet 1 (Compilation Error) - A.M2() cannot be sealed because it is not an override

abstract class A
{
public abstract void M1();

public sealed void M2()
{
// Do Something
}
}

Code Snippet 2 (Works Fine)

abstract class A
{
public abstract void M1();

public virtual void M2()
{

}
}

class B : A
{
public sealed override void M1()
{

}

public sealed override void M2()
{

}
}

问题 - 如果我在 Abstract class 本身中提供方法的实现,为什么 C# 不允许我将它标记为 Sealed,为什么它需要我在子类中覆盖,然后将其标记为密封。我无法理解这种差异

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com