虚方法与抽象方法的区别?
抽象方法:使用abstract关键字
必须被派生类覆写的方法。
抽象方法不能有方法体,如下:
public abstract void print(); 注意这里没有{}但是有;
有抽象方法的类必定要声明为抽象类。
抽象方法可以看成是没有实现体的虚方法。
虚方法:使用virtual关键字
虚方法可以有具体实现的方法体也可以没有,但必须有{},如下
public virtual void print(){} 注意这里没有;
子类可以不覆写父类的虚方法,则调用的时候直接调用父类对应的虚方法。
抽象方法和虚方法都是使用override进行重写