问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

C#中的virtula是什么?

发布网友 发布时间:2022-04-23 11:27

我来回答

7个回答

热心网友 时间:2022-05-23 22:40

C#中的virtula的意思是实际上的,实质上的,虚拟的,虚的。Virtual是C++ OO机制中很重要的一个关键字,Virtual方法分为虚方法和抽象方法。

一、Virtual方法(虚方法)

virtual关键字用于在基类中修饰方法。virtual的使用会有两种情况:

情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法。

情况2:在基类中定义了virtual方法,然后在派生类中使用override重写该方法。那么在对派生类实例的调用中,该虚方法使用的是派生重写的方法。

二、Abstract方法(抽象方法)

abstract关键字只能用在抽象类中修饰方法,并且没有具体的实现。抽象方法的实现必须在派生类中使用override关键字来实现。

abstract:抽象方法声明使用,是必须被派生类覆写的方法,抽象类就是用来被继承的;可以看成是没有实现体的虚方法;如果类中包含抽象方法,那么类就必须定义为抽象类,不论是否还包含其他一般方法;抽象类不能有实体的。

扩展资料:

virtual标记方法为虚方法:

1.可在派生类中以override覆盖此方法

2.不覆盖也可由对象调用

3.无此标记的方法(也无其他标记),重写时需用new隐藏原方法

abstract 与virtual : 方法重写时都使用 override 关键字

接口定义以大写字母I开头。方法只定义其名称,在C#中,方法默认是公有方法;用public修饰方法是不允许的,否则会出现编译错误;接口可以从别的接口继承,如果是继承多个接口,则父接口列表用逗号间隔。

接口可以通过类来实现,当类的基列表同时包含基类和接口时,列表中首先出现的是基类;类必须要实现其抽象方法。

参考资料:百度百科-virtual

热心网友 时间:2022-05-23 23:58

C#中的virtula是一个方法修饰符,标识可被覆载的方法。意思是指实际上的,实质上的,虚拟的,虚的。它是定义虚函数的关键字。Virtual方法分为虚方法和抽象方法。

一、Abstract抽象方法

abstract关键字只能用在抽象类中修饰方法,并且没有具体的实现。抽象方法的实现必须在派生类中使用override关键字来实现。

abstract:抽象方法声明使用,是必须被派生类覆写的方法,抽象类就是用来被继承的;可以看成是没有实现体的虚方法;如果类中包含抽象方法,那么类就必须定义为抽象类,不论是否还包含其他一般方法;抽象类不能有实体的。

二、Virtual虚方法

virtual关键字用于在基类中修饰方法。virtual的使用会有两种情况:

1、在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法。

2、在基类中定义了virtual方法,然后在派生类中使用override重写该方法。那么在对派生类实例的调用中,该虚方法使用的是派生重写的方法。

扩展资料

virtual用虚方法标记:

a、可在派生类中以override覆盖此方法

b、不覆盖也可由对象调用

c、无此标记的方法(也无其他标记),重写时需用new隐藏原方法

abstract 与virtual : 方法重写时都使用 override 关键字

接口可以通过类来实现,当类的基列表同时包含基类和接口时,列表中首先出现的是基类;类必须要实现其抽象方法。

接口定义以大写字母I开头。方法只定义其名称,在C#中,方法默认是公有方法;用public修饰方法是不允许的,否则会出现编译错误;接口可以从别的接口继承,如果是继承多个接口,则父接口列表用逗号间隔。

参考资料:virtual-百度百科

 C#-百度百科

热心网友 时间:2022-05-24 01:32

virtual关键字用于指定属性或方法在派生类中重写.
再写点吧
默认情况下,派生类类从其基类继承属性和方法,如果继承的属性或方法需要在派生类中有不同的行为,则可以重写它,即可以在派生类中定义该属性或方法的新实现,这时在基类中该属性或方法必须用virtual关键字修饰.virtual关键字用于指定属性或方法时可以在派生类中重写.具有virtual关键字的方法或属性被称作虚拟成员.
class A
{
public virtual void F(){}
}

class B:A
{
public override void F(){}
}

热心网友 时间:2022-05-24 03:24

在基类(父类)中用virtual修饰符声明一个虚方法,然后在在派生类(子类)中用override修饰符覆盖基类虚方法。表明是对基类的虚方法重载。
这种优势在于它可以在程序运行时再决定调用哪一个方法,这就是所谓的“运行时多态”
或者称动态绑定。

热心网友 时间:2022-05-24 05:32

在基类(父类)中用virtual修饰符声明一个虚方法,然后在在派生类(子类)中用override修饰符覆盖基类虚方法。表明是对基类的虚方法重载。
这种优势在于它可以在程序运行时再决定调用哪一个方法,这就是所谓的“运行时多态”,或者称动态绑定。

热心网友 时间:2022-05-24 07:56

这是实现面向对象里面最主要得特征之一多态的重要途径,用它定义的方法是虚拟的方法,在继承自他的类重可用override来重写这个方法来实现多态的特征

热心网友 时间:2022-05-24 10:38

楼上的说对了.

virtual 放在方法前面就是说这个方法可以被派生的类用来重写

也就是派生类可以重新写一个与基类同名的方法..
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
何予卿简介 高振宇水稻专家、硕士生导师 Cell 突破!中科院遗传发育所田志喜领衔完成植物中首个图形结构基因组... ...Plant Cell期刊发表基因组组装助力填补禹氏三角的最后一块:四倍体埃 ... 文献解析Cell水稻泛基因组揭示隐藏的基因组变异 韩斌主要学术成果 雨中冒险2棱镜实验怎么完成 棱镜挑战通关攻略介绍 联通宽带DNS怎么填? 联通宽带dns应该设置哪个好点 联通宽带dns怎么设置好点 长方形纸怎么折五角星 视频 “狂魔”“在某领域狂热的人”类似的说法用英语怎么表述? 纸星星怎么折?长条那种,急!谢谢!(最好带视频) 英国文艺复兴时期的个人主义与浪漫主义时期的个人主义的区别_百度问一问 怎么折星星啊?要图片或视频 vertu怎么读 星星怎么折最简单方法慢动作? 英语复数的用法怎么用 人的复数用英语怎么写? 英语:复数形式分为哪几种? 英语复数是什么意思 英语复数怎么加 复数英文有哪些? 睡前吃枸杞都有何好处呢? 睡觉前喝一杯枸杞泡的水,会影响睡眠吗?枸杞是用热水泡吗? 睡觉前吃几粒枸杞对身体有好处吗? 睡觉之前吃枸杞有哪些功效? 晚上睡觉前吃枸杞对身体好吗 睡觉前吃枸杞好吗?为什么哪.. 你知道在睡觉之前吃上五粒枸杞有什么好处吗? 一张纸折出的星星怎么叠 怎样安装虚拟程序! 纸星星怎么折?最好有视频 Lucid Virtu是什么? 用纸折星星的方法,要详细的,最好有图或者视频 virtu mvp支持i7 4790 k吗 win10被别人恶意改了密码,不用优盘就能修改密码。 怎么折五角星呀,用五张纸折的 利用virtualbox开linux ubuntu没有跑 如何折星星 virtu mvp角标怎么去除 如何用纸折星星 台式机核显独显切换显示线连接到主板上还是显卡? 请问用纸怎么折小星星? intel core i5的vt怎么开启,求大神指点 科脑主板怎样虚拟化? 什么是LucidLogix Virtu MVP技术 LucidLogix Virtu MVP是什么 想问下海尔空调外机后背,是这个样子的,是正常的吗?他难道没有防护网吗... virturous effect 应该怎么翻译?
  • 焦点

最新推荐

猜你喜欢

热门推荐