C#虚方法和抽象方法
虚方法:
1、virtual方法表示此方法可以被重写, 也就是说这个方法具有多态.父类中的方法是通用方法,可以在子类中重写以重新规定方法逻辑. 2、virtual方法可以直接使用,和普通方法一样 3、不是必须重写的. 子类可以使用base.方法 的方式调用, 无论有没有在子类使用override去重写
virtual关键字只是明确标示此方法可以被重写, 其实它和一般的方法没有什么区别 相应的 sealed关键字标示此方法不可以被重写
虚方法和抽象方法的区别:
1.虚方法可以有实现体,抽象方法不能有实现体。
2.抽象方法 要求派生类必须重载这个方法;
虚方法 告诉编译器,这个方法可以重写。 当基类的方法与派生类的方法重名时, 可以选择派生类的方法从基类继承并重写, 还是,把基类的方法隐藏起来。

浙公网安备 33010602011771号