c#中void与override区别是什么
void 指方法没有返回值。 override是重写,这是对父类的一个定义好的方法的重写。 例如: class NewBase//定义一个类 { public new virtual void Show()//定义一个虚方法 { Console.WriteLine("我来自子类"); } } class ANewBase : NewBase { public override void Show() //这就是对类方法的重写 { Console.WriteLine("我来自子类的子类"); } }
virtual 关键字用于修饰方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。 例如,此方法可被任何继承它的类重写。
虚拟成员的实现可由派生类中的重写成员更改。 有关如何使用 virtual 关键字的更多信息,请参见使用 Override 和 New 关键字进行版本控制(C# 编程指南)和了解何时使用 Override 和 New 关键字(C# 编程指南)。
调用虚方法时,将为重写成员检查该对象的运行时类型。 将调用大部分派生类中的该重写成员,如果没有派生类重写该成员,则它可能是原始成员。
默认情况下,方法是非虚拟的。 不能重写非虚方法。
virtual 修饰符不能与 static、abstract, private 或 override 修饰符一起使用。 下面的示例演示一个虚拟属性:
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9240380/viewspace-703327/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9240380/viewspace-703327/