sealed关键字
sealed
的英文意思就是密封,禁止的意思。在c#中sealed关键字可以用来修饰类
和方法
。作用于类时不能和abstract对象一起使用,因为使用了sealed修饰类表示此类不能被继承,而抽象类不能被继承将毫无意义。代码如下:
public sealed class Door
{
}
public class SteelDoor:Door //这行代码会报错
{
}
代码报错如下
当
sealed
修饰方法时,表示该方法不能被重写。
public class Zombie
{
public virtual void AttackHumen()
{
Console.WriteLine("对人类有敌意");
}
}
public class Hunter:Zombie
{
public override sealed void AttackHumen() //如果不想AttackHumen方法再被重写,可以用sealed修饰
{
Console.WriteLine("更强烈的攻击欲望");
}
}
public class HunterKing:Hunter
{
public override ArraclHunmen() //这里报错
{
Console.WriteLine("King never Attack hunmen");
}
}
这里报的错误如下
以上就是sealed关键字的使用方法,注意sealed亦不能和virtrual一起使用,因为如果有虚方法不需要重写的话也没有意义.