C# 中的 Final 关键字
csharpprogrammingserver side programming更新于 2025/3/13 23:37:17
Java 有一个 final 关键字,但 C# 没有它的实现。对于相同的实现,请使用 sealed 关键字。
使用 sealed,您可以防止方法被覆盖。当您在 C# 中对方法使用 sealed 修饰符时,该方法将失去其覆盖功能。密封方法应该是派生类的一部分,并且该方法必须是被覆盖的方法。
以下示例不允许您覆盖方法 display(),因为它对 ClassTwo 派生类有一个 sealed 修饰符。
ClassOne 是我们的基类,而 ClassTwo 和 ClassThree 是派生类 −
示例
class ClassOne {
public virtual void display() {
Console.WriteLine("Baseclass");
}
}
class ClassTwo : ClassOne {
public sealed override void display() {
Console.WriteLine("ClassTwo:derivedClass");
}
}
class ClassThree : ClassTwo {
public override void display() {
Console.WriteLine("ClassThree: Another Derived Class");
}
}

