快速了解sealed关键字

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一起使用,因为如果有虚方法不需要重写的话也没有意义.

猜你喜欢

转载自blog.csdn.net/qq_38061677/article/details/80991243
今日推荐