问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

使用sealed,virtual,override,abstract修饰的类有什么特点

发布网友 发布时间:2022-05-29 19:39

我来回答

1个回答

热心网友 时间:2023-11-13 11:34

1. sealed——“断子绝孙”
密封类不能被继承。密封方法可以重写基类中的方法,但其本身不能在任何派生类中进一步重写。当应用于方法或属性时,sealed修饰符必须始终与override一起使用。
即:密封类不会有子类,所以是“断子绝孙”。
2. new——“你是我的,我是我的”
new关键字用于显式隐藏从基类继承的成员。也就是在使用派生类时调用的方式方法是new关键字新定义出来的方法,而不是基类的方法。
在不使用new修饰符的情况下隐藏成员是允许的,但会生成警告。使用new显式隐藏成员会取消此警告,并使用派生类新定义的方法。
即:好比是不用祖宗的东西,而是用自己创造(new)的东西。
3. virtual——“为了子孙后代”
virtual关键字用于修改方法或属性的声明,在这种情况下,方法或属性被称做虚成员。虚成员的实现可由派生类中的重写成员更改。
调用虚方法时,将为重写成员检查该对象的运行时类型。将调用大部分派生类中的该重写成员,如果没有派生类重写该成员,则它可能是原始成员。
在默认情况下,方式是非虚拟的。非虚方法不能重写。
不能将virtual修饰符与一下修饰符一起使用:static、abstract和override。
除了声明和调用语法不同外,虚拟属性的行为与抽象方法一样。
在静态属性上使用virtual修饰符是错误的。
通过override修饰符的属性声明,在派生类中重写虚拟继承属性。
即:virtual是为了让子孙后代可以实现各自的梦想而做的。
4. abstract——“我是上帝”
abstract修饰符可以和类、方法、属性、索引器及事件一起使用。
在类声明中使用abstract修饰符,以指示该类只能是其他类的基类。标记为抽象或包含在抽象类中的成员必须通过从抽象类派生的类来实现。
抽象类具有以下特性:
抽象类不能实例化。
抽象类可以包含抽象方法和抽象访问器。
不能用sealed修饰符修改抽象类,这意味着该类不能被继承。
从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实现。
在方法或属性声明中使用abstract修饰符以指示此方法或属性不包含实现。
抽象方法具有以下特性:
抽象方法是隐式的virtual方法。
只允许在抽象类使用抽象方法声明。
抽象方法声明不提供实际的实现,所以没有方法体;方法声明只是以一个分号结束,并且在结束后没有花括号。
实现由override方法提供,它是非抽象类的成员。
在抽象方法声明中使用static或virtual修饰符是错误的。
除了在声明和调用语法上不同外,抽象属性的行为与抽象方法一样。
在静态属性上使用abstract修饰符是错误的。
在派生类中,通过包括使用override修饰符的属性声明可以重写抽象的基础属性。
即:abstract是一种抽象,好比上帝,是人们对神的抽象,看似什么都能干,其实什么都干不了。
5. override——“一手遮天”
使用override修饰符来修改方法、属性、索引器或事件。主要是提供派生类对基类方法的新实现。覆盖上面abstract、virtual两种关键字修饰的成员。
由重写声明重写的方法称为重写基方法。重写基方法必须与重写方法具有相同的签名。
重写基方法必须是虚拟的、抽象或重写的。不能重写非虚方法或静态方法。
不能使用下列修饰符修改重写方法:new、static、virtual和abstract。
重写属性声明必须指定与继承属性完全相同的访问修饰符、类型和名称,并且重写属性必须是虚拟的、抽象的或重写的。
即:override好比不但不用祖宗的那套,而且还自己创一套新功夫代替祖宗那套。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
湖北哪些学校有专升本 湖北哪些学校可以报专升本 华为mate7会不会卡 中央集权的本质 秦朝中央集权的实质是什么 秦朝建立专制主义中央集权制度的本质特征是 A改王为皇帝 B建立中央官制... 想生个女儿怎么备孕 怎样备孕生女孩7个方法 备孕怎样做才能生女孩 天津市国税局公务员面试成绩去哪儿查? c#中virtual,new和override的区别 1μm在光学显微镜下看得到么 dns override怎么用 唐宋八大家是什么八大家 1微米的物质用多大倍数的显微镜能看到该物质的具体形状? 唐宋八大家是哪8位? 显微镜的精度等级? 为什么普通的光学显微镜看不到一微米的小球? 要看清一微米的东西,买多少倍的显微镜好 唐宋古文八大家是谁? “欢乐女神,圣洁美丽,灿烂光芒照大地”这首歌的曲作者是哪位? 唐宋古文八大家之一 C#中的virtual和override的用法 京汉铁路的股票 希腊人物谁的名字是以w开头的 Overload和Override的区别 青菜瘦肉粥怎么做好吃 希腊神话中,欢乐女神和复活女神分别是谁? 里面的override什么意思 怎么查看手机号注册了几个 1微米在显微镜下放大15x40倍时是多大? override 是什么意思? 细菌长度只有1微米,直径约0.5微米,要把它的直径放大到5厘米,显微镜的放大倍数应该有多大? 哪位大侠给我讲讲c#中virtual, abstract和override的区别和用法,不胜感激,初学者,刚学这段,非常迷糊 一纳米和一微米能看得到吗 怎么查询手机注册的 1~10微米,10~50微米细菌需要分别显微镜多少倍下可见. C#下 子类继承父类的虚方法后 使用override重写父类方法 和 不使用override重写有什么区别? 请问1毫米肉眼很难辨别,1微米是怎样识别呢? 怎么查手机绑定了那个 普通生物显微镜最高的分辨力可达几个微米? 在10x光学显微镜下能看到多大粒径的粒子 电视背景墙的效果图 玻璃隔断电视背景墙 亚克力魔块电视墙 新房装修客厅效果图 3d电视背景墙效果图 求电视背景墙效果图! GMQT代币是属于什么类型的呢? 元旦、春节返乡有哪些防控要求吗? dnf体验服普法的代币可以留多久 我现在不用可以留到国庆吗 会清零吗 问道代币卷买哪些东西好 三国群英传OL 单机版 怎么修改三国代币 问道代币卷如何变成文?我有300多W代币卷,却只有3W多文,怎样转换?