// 定义一个sealed类,表示该类不能被继承
public sealed class MyClass
{
// 类的成员
public void MyMethod()
{
Console.WriteLine("This is a method in a sealed class.");
}
}
// 尝试继承sealed类会报错
// public class DerivedClass : MyClass
// {
// // Error: Cannot inherit from sealed class 'MyClass'
// }
// 使用sealed修饰符在方法或属性上,防止其在派生类中被重写
public class BaseClass
{
public virtual void VirtualMethod()
{
Console.WriteLine("Base class method");
}
public sealed override void SealedOverrideMethod()
{
Console.WriteLine("Sealed override method");
}
}
public class DerivedClass : BaseClass
{
public override void VirtualMethod()
{
Console.WriteLine("Derived class method");
}
// 下面这行代码会导致编译错误,因为SealedOverrideMethod是密封的,不允许进一步重写
// public override void SealedOverrideMethod()
// {
// Console.WriteLine("Attempt to override sealed method");
// }
}
MyClass 是一个使用 sealed 关键字修饰的类。这意味着 MyClass 不能被其他类继承。尝试继承 MyClass 会导致编译错误。BaseClass 中,SealedOverrideMethod 是一个使用 sealed 和 override 关键字修饰的方法。这表示该方法不仅重写了基类中的同名虚方法,还阻止了派生类进一步重写该方法。尝试在 DerivedClass 中重写 SealedOverrideMethod 会导致编译错误。上一篇:c#保留两位小数
下一篇:c# aes加密
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站