文章目录
多态
C# 中的 多态 是面向对象编程中的一个重要特性,允许对象以不同的方式表现出来。通过多态,同一个方法可以根据对象的不同类型而表现出不同的行为。C# 主要通过 方法重载(Overloading)、方法重写(Overriding)和 接口实现 来实现多态。
多态的主要类型
- 编译时多态(
静态多态
)通过方法重载和运算符重载实现,在编译时就能确定调用哪个方法。 - 运行时多态(
动态多态
)通过方法重写和接口实现实现,方法的调用是在运行时根据对象的实际类型来决定的。
编译时多态我们已经学过了,就不重复讲了。
一、virtual、override 和 base 关键字
1、virtual
关键字 (虚方法)
virtual
关键字用于在基类中声明一个方法为虚方法。虚方法允许子类在继承时对该方法进行重写(通过 override
),从而实现多态。
- 继承:虚方法通常是在基类中定义的,子类可以继承并对其进行重写。
- 多态:虚方法支持运行时多态,允许在运行时