标题:virtual ,override 与new
只看楼主
rgbtdkjcel
Rank: 1
等 级:新手上路
帖 子:294
专家分:0
注 册:2007-3-26
结帖率:50%
 问题点数:0 回复次数:1 
virtual ,override 与new
virtual,override与new都是重写基类中的成员。。virtual与override是一组。。那请问一下。。它与new 之间有区别吗???
搜索更多相关主题的帖子: override virtual new 
2007-09-21 19:07
jxnuwy04
Rank: 2
等 级:新手上路
威 望:4
帖 子:768
专家分:0
注 册:2006-9-15
得分:0 

在 C# 中,new 关键字可用作运算符、修饰符或约束。

new 运算符
用于创建对象和调用构造函数。

new 修饰符
用于向基类成员隐藏继承成员。

new 约束
用于在泛型声明中约束可能用作类型参数的参数的类型。

virtual 关键字用于修饰方法、属性、索引器或事件声明,并且允许在派生类中重写这些对象。例如,此方法可被任何继承它的类重写。

调用虚方法时,将为重写成员检查该对象的运行时类型。将调用大部分派生类中的该重写成员,如果没有派生类重写该成员,则它可能是原始成员。

默认情况下,方法是非虚拟的。不能重写非虚方法。

virtual 修饰符不能与 static、abstract 和 override 修饰符一起使用。

除了声明和调用语法不同外,虚拟属性的行为与抽象方法一样。

在静态属性上使用 virtual 修饰符是错误的。

通过包括使用 override 修饰符的属性声明,可在派生类中重写虚拟继承属性。


这些是MSDN上的原话,如果你装了MSDN的话,我想我们需要的都可以在这里找得到的.


------------------不为别的,就为你,我的理想!-----------------
2007-09-21 19:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-171900-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014289 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved