密封类和类成员

通过在类定义前面放置关键字sealed,可以将类声明为密封类。如下:

public sealed class A

{

}

密封类的特点:不能用作基类,即不能被继承。

在对基类的虚成员进行重写时,可以将派生类的类成员(方法、字段、属性或事件)声明为密封成员。在用于以后的派生类时,这将取消成员的虚效果。如下所示:

public class A

{

   public virtual void DoWork()

   {

       // do some work

   }

}





public class B : A

{

   public override sealed void DoWork()

   {

      // do some work

   }

}



public class C : B

{

   /*public override void DoWork()

     {

     }*/

}

如上所示,在类C中,无法对DoWork方法进行重写,若去掉注释,编译时会报一个错误:继承成员是sealed,无法进行重写

你可能感兴趣的:(类)