首页 > 代码库 > C#高级编程之Sealed修饰符
C#高级编程之Sealed修饰符
1.sealed 修饰符用来干什么的呢?
a.修饰类时,表示被修饰的类不能再继承。不可以和abstract一起用,因为意义相反。
b.修饰方法或者属性,表示被修饰方法或者属性不可以被重写。必须和 override 关键字一起使用。
因为使用 sealed 修饰符的方法或属性肯定是基类中相应的虚成员。
通常用于实现第三方类库时不想被客户端继承,或用于没有必要再继承的类以防止滥用继承造成层次结构体系混乱,恰当的利用sealed修饰符也可以提高一定的运行效率,因为不用考虑继承类会重写该成员。
案例:
代码如下
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Test { class Program { public enum timeofday { Morning=0, Afternoon =1, Evening=2 } static void Main(string[] args) { Customer c = new Customer(); c.show(3); } class A { public virtual void F() { Console.WriteLine("A.F"); } public virtual void G() { Console.WriteLine("A.G"); } } class B : A { /// <summary> /// 密封一个方法 /// </summary> public sealed override void F() { Console.WriteLine("B.F"); } public override void G() { Console.WriteLine("B.G"); } } class C : B { public override void G() { Console.WriteLine("C.G"); } } } }
本文出自 “爱咖啡” 博客,请务必保留此出处http://4837471.blog.51cto.com/4827471/1566007
C#高级编程之Sealed修饰符
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。