您的位置:首页 > 编程语言 > C#

new更新C#继承中的虚函数

2006-08-01 10:14 417 查看
通常情况下,base class定义一个virtual method,在derived class中override虚函数,将使新的类中的同名函数定义为自己的函数.
但如果想在继承的中途改变基类的虚函数,可以在derivedC2用如public new virtual void...(new关键字)进行定义同名函数,则后面由此类继续的类中,覆写同名函数的基虚函数为更新后的.
而由于derived classes无论是从base class还是从derivedC2中继承,它们的ancestor都是base class(因为derivedC2显然是从base class中派生),故如果写:
baseClass obj = new derivedC2()
obj不认得derivedC2中全新的虚函数,所以obj还是调用baseClass的基虚函数.而如果在derivedC2中是简单覆写的话(通常情况下是这样的),则我们知道是应该调用derivedC2定义的函数的.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: