在C#中,重载(Overloading)是指在同一个类中定义多个同名函数,但它们的参数列表不同。这样,根据传递给函数的参数类型和数量,编译器可以自动选择正确的函数版本来执行。
在C#中,你可以重载方法,但不能重载运算符。以下是一个简单的C#重载方法的示例:
using System;
class Program
{
static void Main()
{
MyClass obj = new MyClass();
obj.MyMethod(10); // 调用第一个重载方法
obj.MyMethod(10.5); // 调用第二个重载方法
}
}
class MyClass
{
// 第一个重载方法,接受一个整数参数
public void MyMethod(int num)
{
Console.WriteLine("调用第一个重载方法,参数为整数: " + num);
}
// 第二个重载方法,接受一个浮点数参数
public void MyMethod(double num)
{
Console.WriteLine("调用第二个重载方法,参数为浮点数: " + num);
}
}
在这个示例中,MyClass
类有两个名为MyMethod
的重载方法。第一个方法接受一个整数参数,第二个方法接受一个浮点数参数。当我们在Main
方法中调用obj.MyMethod(10)
时,编译器会根据参数类型选择第一个重载方法。同样,当我们调用obj.MyMethod(10.5)
时,编译器会选择第二个重载方法。