-
C#入门经典教程中介绍的密封方法
资源介绍
密封方法
还可以在重写基类中的虚方法或虚属性上使用 sealed 修饰符。这将使您能够允许类从您的类继承,并防止它们重写特定的虚方法或虚属性。在下面的示例中,C从B继承,但C无法重写在A中声明并在B中密封的虚函数F。
class A
{
public virtual void F() { Console.WriteLine("A.F"); }
public virtual void F2() { Console.WriteLine("A.F2"); }
}
class B : A
{
public sealed override void F() { Console.WriteLine("B.F"); }
public override void F2() { Console.WriteLine("A.F3"); }
}
class C : B
{
// Attempting to override F causes compiler error CS0239.
// protected override void F() { Console.WriteLine("C.F"); }
// Overriding F2 is allowed.
public override void F2() { Console.WriteLine("C.F2"); }
}