C# Foundation---keyword: sealed

 1 using  System;
 2 using  System.Collections.Generic;
 3 using  System.Text;
 4
 5 namespace  CSharpFoundationStudy
 6 {
 7    /**//*
 8     * From: 
 9     * 关键字 internal
10     * internal 修饰符可以用于类型或者成员 使用该修饰符的类型或成员可以在同一个程序集内被访问
11     * 如果为 internal 成员加上了 protected 修饰符,这时的访问级别为 internal 或 protected,表示“同一个程序集中的所有类,以及所有程序集中的子类都可以访问”
12     *
13     * override 与 overload
14     * override 是表示重写,用于继承类对于基类中虚方法或者抽象方法的实现
15     * overload 是表示重载,用于同一个类中同名方法不同参数(包括类型不同或个数不同)的实现
16     * 
17     * 关键字 sealed
18     * sealed 表示密封
19     * sealed 修饰符用于类时,表示该类不能再被继承,不能与 abstract 同时使用,因为这两个修饰符在含义上相互排斥
20     * sealed 修饰符用于方法或者属性时,表示该方法或者属性不能再被重写,必须与 override 一起使用,因为使用 sealed 修饰符的肯定是基类中相应的虚成员
21     * 
22     * 通常用于实现第三方类库时不想被客户端继承,或用于没有必要再继承的类以防止滥用继承造成层次结构体系混乱
23     */

24    public class SealedA
25    {
26        //Error: "CSharpFoundationStudy.Sealed.Output()"不是重写,所以无法将其密封
27        //public sealed void Output(){ Console.WriteLine("Sealed Function in Base Class!"); }
28
29        public virtual void F()
30        {
31            Console.WriteLine("SealedA.F");
32        }

33
34        public virtual void G()
35        {
36            Console.WriteLine("SealedA.G");
37        }

38    }

39
40    public class SealedB : SealedA
41    {
42        public sealed override void F()
43        {
44            Console.WriteLine("SealedB.F");
45        }

46
47        public override void G()
48        {
49            Console.WriteLine("SealedB.G");
50        }

51    }

52
53    public class SealedC : SealedB
54    {
55        public sealed override void G()
56        {
57            Console.WriteLine("SealedC.G");
58        }

59    }

60
61    //public class SealedTest
62    //{
63    //    public static void Main()
64    //    {
65    //        new SealedA().F();
66    //        new SealedA().G();
67    //        new SealedB().F();
68    //        new SealedB().G();
69    //        new SealedC().F();
70    //        new SealedC().G();
71    //        Console.ReadLine();
72    //    }
73    //}
74}

75

转载于:https://www.cnblogs.com/simply-zhao/archive/2008/01/20/1046457.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值