C#中的密封方法
C# 增加的sealed(密封的)关键字,用于修饰方法和类,表示继承来的虚方法不能被其派生类再重写和类不能被继承。分别被称为密封方法和密封类,其中密封方法必须同override一起使用。例如:
using System;
class A {
public virtual void F() {
Console.WriteLine("A.F");
}
public virtual void G() {
Console.WriteLine("A.G");
}
}
class B: A {
public sealed override void F() {
Console.WriteLine("B.F");
}
public override void G() {
Console.WriteLine("B.G");
}
}
class C: B {
public override void F() { // 错误,不能覆盖密封方法
Console.WriteLine("C.F");
}
public override void G() {
Console.WriteLine("C.G");
}
}
又例如:
sealed class A {}
class B: A {} // 错误,不能从密封类派生
本文源自:翔宇亭——IT乐园(http://www.biye5u.com),转载请保留此信息!
微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。
个人成长离不开各位的关注,你的关注就是我继续前行的动力。