C#封闭方法和封闭类:sealed
C#中的封闭方法和封闭类
一、封闭类
使用sealed修饰符修饰的类为封闭类,表示该类不可被继承。故,该修饰符不可与abstract一起使用,因为抽象类的方法需要继承的实体类做具体实现,必须被继承才有意义。
using System;namespace Test
{public sealed class Transformer{private static bool flag = false;public static void ChangeStatus(){Action change = () =>{flag = !flag;Console.WriteLine(flag);};change();}public static void PrintNum(int num){Action Print = () =>{Console.WriteLine(num);};Print();}}public class Tmp : Transformer//error:无法从密闭类型派生{}public class Program{public static void Main(){Transformer.ChangeStatus();Transformer.PrintNum(5);}}
}
二、封闭方法
sealed应用与方法时,表示该方法不允许子类进行替代,即:作用与方法时,sealed必须与override一起使用。
using Microsoft.VisualBasic.CompilerServices;
using System;
using Test;
using System.Diagnostics;
using System.Linq.Expressions;
using System.Runtime.InteropServices;
using System.Runtime.InteropServices.WindowsRuntime;namespace Test
{public abstract class Base{public abstract void show();}public class First : Base{public sealed override void show(){Console.WriteLine("You will always see this Message.");}}public class Second : First{public override void show()//error:继承成员First.show成员是密封的,无法进行重写。{}}public class Program{}
}
C#封闭方法和封闭类:sealed相关推荐
- 【Groovy】Groovy 方法调用 ( Java 类成员及 setter 和 getter 方法设置 | Groovy 类自动生成成员的 getter 和 setter 方法 )
文章目录 一.Java 类成员及 setter 和 getter 方法设置 二.Groovy 类自动生成成员的 getter 和 setter 方法 一.Java 类成员及 setter 和 gett ...
- C#泛型委托,匿名方法,匿名类
C#泛型委托,匿名方法,匿名类 class Test{delegate K proxy<T, K>(T t, K k); //泛型委托,注意返回值的写法,返回值的类型K先于其声明proxy ...
- java map常用类及其方法_Day50.Map类常用的方法 -Java常用类、集合#、IO
Day50.Map类常用的方法 -Java常用类.集合#.IO Day50.Map类常用的方法 -Java常用类.集合#.IO Map类常用的方法 . 总结: 常用方法 添加: put(Object ...
- Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中
Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中 题目 程序说明 题目槽点 代码:Test2_BMI.java 运行实例 题目 程序说明 Test2_BMI.java ...
- .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类
0x00 为什么要引入扩展方法 有的中间件功能比较简单,有的则比较复杂,并且依赖其它组件.除了直接用ApplicationBuilder的Use()方法注册中间件外,还可以使用ApplicationB ...
- java中如何使用反射调用方法以及获得类中的属性
使用反射获取类中的方法: 1):获取方法所在类的字节码对象. 2):获取方法. ------------------------------------------------------------ ...
- Sort方法根据T类某个字段对泛型集合ListT排序
实现:采用Sort方法根据T类某个字段对泛型集合List<T>排序. 实现代码如下: static void Main(string[] args){List<Stud> st ...
- 初学者python笔记(类的装饰器、property方法、元类)
文章目录 上下文协议管理 类的装饰器基本原理 property方法的巧用 利用描述符自定制property property下的setter与deleter Python的元类 元类的概念 自定义元类 ...
- IDEA中如何给含有main方法的普通类设置JVM参数
问题描述:IDEA中如何给含有main方法的普通类设置JVM参数,并使其运行 解决方法: 第一步:找到并选中含有main方法的普通类,然后单击鼠标右键选择"Run 'xxx.main()' ...
最新文章
- 【转】Hbuilder MUI 页面刷新及页面传值问题
- css文本框样式收集
- 一位 83 岁独立开发者教会我的道理
- 下午回来才后知百密于一疏忽
- jdk1.8安装教程,跟着步骤来 安装失败你来打我
- Jquery重新学习之五[操作JSON数据]
- led灯光衰怎么解决_如何解决LED灯具照明光衰问题
- Swift - 控制流/控制结构说明(if,switch,for,while)
- ffmpeg 拼接mp4_ffmpeg 合并 拼接 mp4视频
- 【安装包】gcc编译器
- python拟合直线的斜率_线性曲线拟合总是得到斜率和y的中间值为1
- windows上vscode 安装Fortran-language-server
- 图解 Paxos 算法
- Java 定义一个 Employee类,定义方法输出Employee的名字,年龄,总收入。编写应用程序使用Employee
- 5.学城项目 支付宝支付
- 银河麒麟(kylin)V10桌面版
- Java实现微信运动步数(已自测)
- 链塔智库|区块链产业要闻及动态周报(2020年10月第2周)
- ps最大兼容 计算机一级,Photoshop最大兼容是什么意思?最大兼容使用解析
- 我为什么坚信光触媒的未来?