C#高级编程之Sealed修饰符
1.sealed 修饰符用来干什么的呢?
a.修饰类时,表示被修饰的类不能再继承。不可以和abstract一起用,因为意义相反。
b.修饰方法或者属性,表示被修饰方法或者属性不可以被重写。必须和 override 关键字一起使用。
因为使用 sealed 修饰符的方法或属性肯定是基类中相应的虚成员。
通常用于实现第三方类库时不想被客户端继承,或用于没有必要再继承的类以防止滥用继承造成层次结构体系混乱,恰当的利用sealed修饰符也可以提高一定的运行效率,因为不用考虑继承类会重写该成员。
案例:
代码如下
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceTest{classProgram{publicenumtimeofday{Morning=0,Afternoon=1,Evening=2}staticvoidMain(string[]args){Customerc=newCustomer();c.show(3);}classA{publicvirtualvoidF(){Console.WriteLine("A.F");}publicvirtualvoidG(){Console.WriteLine("A.G");}}classB:A{///<summary>///密封一个方法///</summary>publicsealedoverridevoidF(){Console.WriteLine("B.F");}publicoverridevoidG(){Console.WriteLine("B.G");}}classC:B{publicoverridevoidG(){Console.WriteLine("C.G");}}}}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。