虚方法与两种重写方法的比较
虚方法virtual..override:
1.派生类的方法和基类的方法有相同的签名和返回类型。
2.基类的方法使用virtual标注。
3.派生类的方法使用override标注。
class MyBaseClass { virtual pubilc void Print() ... } class MyDerivedClass : MyBaseClass { override pubilc void Print() ... }
注意:
1.重写和被重写的方法必须有相同的可访问性。换一种说法,被重写的方法不能是private等,而重写方法是pubilc。
2.不能重写静态方法和非虚方法。
两种重写方法,一种是用override, 一种是new。
override方法中调用方法可以直接通过关键字找到相应的函数方法,new 方法调用的方法只向上传递一级。
详细参考 《C#图解教程》P128-129。