(十三)sealed、new、virtual、abstract 和 override
一、sealed 密封类不能被继承,密封方法可以重写基类中的方法,但本身不能在任何子类中进行重写。
当应用于方法和属性时,必须始终和override一起使用 。
二、new 显示隐藏从基类继承的成员,不使用new 也是允许的,但会有警告。
三、virtual 修饰的方法和属性被称为虚成员,默认情况下方法是非虚拟的,非虚方法不能重写。
1.静态属性上不可使用 virtual
2.通过使用 override 在子类中重写虚拟继承属性
四、abstract 指示该类只能是其他类的基类
抽象类:
1.不能实例化
2.非抽象子类必须包含基类所有抽象方法和抽象访问器的实现
抽象方法:
1.抽象方法是隐式的virtual 方法
2.只能在抽象类中使用抽象方法
3.声明不提供实现,通常以分号结束,例如:public abstract void MyMethod();
4.抽象方法不能使用 static 和 virtual 修饰
五、override 用来覆盖基类中用 abstract 和 virtual 修饰的成员
分类:
ASP.NET学习笔记
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· 一个基于 .NET 开源免费的异地组网和内网穿透工具
· 《HelloGitHub》第 108 期
· Windows桌面应用自动更新解决方案SharpUpdater5发布
· 我的家庭实验室服务器集群硬件清单