C#之面向对象
封装
继承
多态
所谓多态,是让继承同一父类的子类们在执行相同方法时有不同的表现,从而使同一个对象有唯一的行为特征。
虚拟方法
实现虚拟方法分为三个阶段:
V( virtual虚函数 ) -> O( override重写 ) -> B( base父类 )
下面是一个使用虚拟方法的例子:
首先,声明一个有虚函数的父类:
1 | class GameObject |
接下来,用一个子类去重写其中的虚函数:
1 | class Player : GameObject |
其中,base代表父类,可以通过base来保留父类的行为。
抽象类和抽象方法
抽象方法和虚拟方法很像,抽象方法是一种特殊的虚拟方法。
它俩的区别主要是:虚函数是 “可选重写” 的多态函数,基类可实例化;抽象函数是 “强制重写” 的接口型函数,含抽象函数的类为抽象类,不可实例化。
接下来是一个抽象类和抽象方法的实现:
1 | abstract class Thing |
注意:
- 抽象类不能被实例化
- 继承抽象类必须用
override重写其抽象方法 - 抽象方法 只能在抽象类中声明 && 没有方法体 && 不能是私有的
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 MeiMeiBlog!





