目录
多态允许对象在不同的上下文中表现出不同的行为,简单来说,多态是指不同的类可以通过相同的接口来执行不同的操作,c#中的多态主要分为两种类型:
1,编译时多态(静态多态):主要通过方法重载和运算符重载实现
2,运行时多态(动态多态):主要通过方法重写(virtual和override)和接口实现
一,编译时多态
编译时多态主要依赖于方法重载和运算符重载
1,方法重载
方法重载是指在同一个类中,可以定义多个同名的方法,但他们的参数不同,编译 器根据调用时传入的参数来决定调用那个方法
例:
using System;
public class Calculator
{
// 方法重载
public int Add(int a, int b)
{
return a + b;
}
public double Add(double a, double b)
{
return a + b;
}
public string Add(string a, string b)
{
return a + b;
}
}
class Program
{
static void Main()
{
Calculator calculator = new Calculator