多态性
我们在程序中使用多态的频率是多少?多态是面向对象编程语言的第三大支柱,我们几乎每天都在使用它,却不去想它。
这是一个非常简单的图表,它将解释多态性本身。
简单来说,我们可以说,只要我们重载类的方法,就称为多态性。或者可以说,多态性通常表示为"一个接口,多个函数"。这意味着我们有多个具有相同名称但不同参数的函数。
例子
using System;
namespace Polymorphism // 命名空间,用于组织代码
{
class Program // 主程序类
{
class Car // 定义一个Car类
{
// CarDetail方法,无参数
public void CarDetail()
{
// 输出一条信息:丰田车可用
Console.WriteLine("Car Toyota is available");
}
// CarDetail方法,带一个int类型的参数
public void CarDetail(int priceRange)
{
// 输出一条信息:兰博基尼车可用,它是一辆昂贵的车
Console.WriteLine("Car lamborghini is available its expensive car");
}
// CarDetail方法,带两个参数:一个int类型和一个string类型
public void CarDetail(int priceRange, string colour)
{
// 输出一条信息:奔驰车可用,白色
Console.WriteLine("Car mercedes is available in white color");
}
}
// 主程序入口点
static void Main(string[] args)
{
// 创建Car类的实例cr
Car cr = new Car();
// 调用无参数的CarDetail方法
cr.CarDetail();
// 调用带一个int参数的CarDetail方法
cr.CarDetail(2200000);
// 调用带两个参数的CarDetail方法
cr.CarDetail(2200000, "White");
// 等待用户按下任意键,以防程序立即退出
Console.ReadKey();
}
}
}
在此示例中,我们创建了三个具有相同名称(CarDetail)的不同函数,但这些函数具有不同的参数集。在下一个主题中,我将更详细地讨论多态性及其两种类型。
- 静态多态性
- 动态多态性