ITPub博客

首页 > Linux操作系统 > Linux操作系统 > C# 关键字sealed

C# 关键字sealed

原创 Linux操作系统 作者:iDotNetSpace 时间:2009-02-11 16:32:01 0 删除 编辑

sealed 修饰符可以应用于类、实例方法和属性。密封类不能被继承。密封方法会重写基类中的方法,但其本身不能在任何派生类中进一步重写。当应用于方法或属性时,sealed 修饰符必须始终与 override(C# 参考) 一起使用。

在类声明中使用 sealed 修饰符可防止继承此类,例如:


1
2      sealed class SealedClass
3{
4    public int x;
5    public int y;
6}
将密封类用作基类或将 abstract 修饰符与密封类一起使用是错误的。

结构是隐式密封的;因此它们不能被继承。

有关继承的更多信息,请参见继承(C# 编程指南)。

示例:

 1// cs_sealed_keyword.cs
 2using System;
 3sealed class SealedClass
 4{
 5    public int x;
 6    public int y;
 7}
 8
 9class MainClass
10{
11    static void Main()
12    {
13        SealedClass sc = new SealedClass();
14        sc.x = 110;
15        sc.y = 150;
16        Console.WriteLine("x = {0}, y = {1}", sc.x, sc.y);
17    }
18}
 

 输出

x = 110, y = 150
在前面的示例中,如果试图通过使用下面的语句从密封类继承:

class MyDerivedC: SealedClass {} // Error

将收到错误消息:

'MyDerivedC' cannot inherit from sealed class 'SealedClass'.

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639172/viewspace-548717/,如需转载,请注明出处,否则将追究法律责任。

上一篇: C#索引器和属性
请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    2376
  • 访问量
    5321279