C# sealed关键的作用

在C#中,sealed关键字有两个作用

1. 为了确保其他类不可以派生于某一个类,可以使用sealed关键字密封该类,防止其他类继承自该类;

public sealed class Person
{
  
}

下面的语句将导致产生错误:

//Error:Person is sealed
public class Student:Person
{

}

 

注意: 密封类中不能包含虚方法(Virtual)和抽象方法(abstract),因为在密封的类没有为派生类提供实现其虚方法和抽象方法的机会。

 

2.限制其他派生类重写在当前类中提供的方法实现

public class Person
{    

  public sealed string SayHello() 
  {
     return "hello" ;
  }
 } 

public class Student:Person  
{  
    // Error:SayHello() is sealed in Person class
     public  override string SayHello()   
     {  
         return  "嘿嘿";
     }  
}  

 

posted @ 2016-11-07 17:42  devping  阅读(3989)  评论(0)    收藏  举报