密封类可以用来限制扩展性,如果密封了某个类,则其他类不可以从该类继承;如果密封了某个成员,则派生类不能重写该成员的实现。默认情况下,不应密封类型和成员。密封可以防止对库的类型和成员进行自定义,但也影响某些开发人员对可用性的认识。


C#中如果满足以下条件,则应将其密封:

1)

类是静态的;

2)

类包含带有安全敏感信息的继承的受保护成员;

3)

类继承多个虚成员,并且密封每个成员的开发和测试开销明显大于整个类;

4)

类是一个要求使用反射进行快速搜索的属性。密封属性可提高反射在检索属性时的性能。


C#中声明密封类时,需要使用sealed关键字,具体语法格式如下:

   1: 访问修饰符  sealed class 类名: 基类或接口
   2: {
   3:     //类成员
   4: }

作者:韩兆新
出处:http://hanzhaoxin.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

分类: [01]C#语言基础
标签: C#学习笔记
本文转自韩兆新博客博客园博客,原文链接:http://www.cnblogs.com/hanzhaoxin/archive/2012/12/15/2819558.html,如需转载请自行联系原作者

C#学习笔记——密封类与密封方法相关推荐

  1. 《Go语言圣经》学习笔记 第六章 方法

    <Go语言圣经>学习笔记 第六章 方法 目录 方法声明 基于指针对象的方法 通过嵌入结构体来扩展类型 方法值和方法表达式 示例:Bit数组 封装 注:学习<Go语言圣经>笔记, ...

  2. Ui学习笔记---EasyUI的使用方法,EasyLoader组件使用

    Ui学习笔记---EasyUI的使用方法,EasyLoader组件使用 技术qq交流群:CreDream:251572072 1.使用之前导入文件:   这里用jquery-easyui-1.2.6 ...

  3. js学习笔记2 -- js使用方法

    js学习笔记2 -- js使用方法 方法一,使用外部js文件(推荐使用) 方法二,写在script标签中 方法三,写到标签的onclick属性中 方法四,使用超链接 方法一,使用外部js文件(推荐使用 ...

  4. Hibernate学习笔记Session.evict(user)方法

    @[TOC]Hibernate学习笔记Session.evict(user)方法 Hibernate学习笔记Session.evict(user)方法 首先我们要明白Session.flush(use ...

  5. wyy课堂cmos模拟设计课学习笔记-gm/Id设计方法介绍及曲线仿真

    wyy课堂cmos模拟设计课学习笔记-gm/Id设计方法及曲线仿真 总思路 需要的图像曲线 软件操作 举例说明 总思路 这在b站上也有教学视频:https://www.bilibili.com/vid ...

  6. 凸优化学习笔记 15:梯度方法

    前面的章节基本上讲完了凸优化相关的理论部分,在对偶原理以及 KKT 条件那里我们已经体会到了理论之美!接下来我们就要进入求解算法的部分,这也是需要浓墨重彩的一部分,毕竟我们学习凸优化就是为了解决实际当 ...

  7. 【学习笔记11】动态方法调用和使用通配符定义action

    2019独角兽企业重金招聘Python工程师标准>>> 动态方法调用: 如果Action中存在多个方法时,我们可以使用 !+方法名调用指定方法.如下: public class He ...

  8. python测试自动化封装_python接口自动化学习笔记(封装获取测试数据方法)

    本篇文章是接于python接口自动化学习笔记(封装方法用于读取excel) 后的拓展,讲解在封装完成excel的数据读取代码后,如何在data层进行使用 首先,我准备了这样一个excel表格用以存储测 ...

  9. html添加删除元素属性,jQuery学习笔记——.attr()和.removeAttr()方法操作元素属性

    今天主要和大家一起分享一下如何使用jQuery的jQuery就可以让我们轻松的读取,添加,更改或删除一个(或多个)元素中的任何属性,在jQuery中我们可以使用下面的方法来实现:.attr():jQu ...

最新文章

  1. mysql查看存储过程工作记录20130711
  2. 某公司Java面试题
  3. 探索.NET中事件机制(续)——虚事件和事件重写问题,微软的Bug?!
  4. storm流式大数据处理流行吗
  5. flutter 日历_Flutter:一个更贴近真实项目的练习
  6. 浏览器里面看到的表单数据映射到python_python爬虫入门01:教你在 Chrome 浏览器轻松抓包...
  7. 阿里云rds for mysql平台介绍_阿里云RDS for MySQL 快速入门——笔记
  8. 破解keil 2k限制,注册码生成
  9. python练手经典100例-推荐几个适合新手练手的Python项目《python入门例子》
  10. 科大讯飞 文字转语音
  11. Multisim单结晶体管触发电路仿真
  12. NBIOT工作模式详解(BC26模组)
  13. 职称计算机考试常用的命令,职称计算机考试VisualFoxPro常用命令
  14. iOS性能优化-列表卡顿
  15. 华为机试(Python)真题Od【A卷+B卷】
  16. http协议规定的数据格式
  17. python soup中文歌词_Python调用BeautifuSoup进行html的文本内容提取问题 [ 求问吃鸡主播beautifu1 boy...
  18. SRM 475 DIV1 900
  19. 计算机图形学 英语,计算机图形学专业术语中英文对照
  20. shell 脚本中wait命令以及多进程库wait()原语的使用

热门文章

  1. Redis实现分布式锁全局锁—Redis客户端Redisson中分布式锁RLock实现
  2. PowerPoint动画制作时的需要注意的N个事项
  3. HTTP API 设计指南(基础部分)
  4. 如何計算SDRAM使用頻寬?
  5. Loadrunner的Tuxedo脚本分析,基本流程和基本函数介绍
  6. c语言作业 龟兔赛跑,c语言龟兔赛跑
  7. java 1.8 tar.gz_linux安装java1.8
  8. KaliLinuxNetHunter教程下载相关资源
  9. Swift3.0语言教程使用URL字符串
  10. Swift 1.1语言快速入门7.2使用无参函数