首页 > 编程笔记 > C#笔记 阅读:54

C#中的方法重载(附带实例)

方法重载是指方法名称相同,但参数的数据类型、个数或顺序不同的方法。

C# 中,只要类中有两个以上的同名方法,但是使用的参数类型、个数或顺序不同,在调用时,编译器即可判断在哪种情况下调用哪种方法。

【实例】加法的不同运算形式。首先创建一个控制台应用程序,并定义一个 Add() 方法,该方法有 3 种重载形式,分别用来计算两个 int 类型数据的和、一个 int 类型和一个 double 类型数据的和、3 个 int 类型数据的和;然后在 Main 方法中分别调用 Add 方法的 3 种重载形式,并输出计算结果。代码如下:
class Program
{
    // 定义方法Add,返回值为int类型,有两个int类型参数
    public static int Add(int x, int y)
    {
        return x + y;
    }
    public double Add(int x, double y)    // 重载方法Add,它与第一个参数的类型不同
    {
        return x + y;
    }
    public int Add(int x, int y, int z)   // 重载方法Add,它与第一个的参数个数不同
    {
        return x + y + z;
    }
    static void Main(string[] args)
    {
        Program program = new Program();    // 创建类对象
        int x = 3;
        int y = 5;
        int z = 7;
        double y2 = 5.5;
        // 根据传入的参数类型及参数个数的不同调用不同的Add重载方法
        Console.WriteLine("第1种重载形式: " + x + "+" + y + "=" + Program.Add(x, y));
        Console.WriteLine("第2种重载形式: " + x + "+" + y2 + "=" + program.Add(x, y2));
        Console.WriteLine("第3种重载形式: " + x + "+" + y + "+" + z + "=" + program.Add(x, y, z));
        Console.ReadLine();
    }
}
程序的运行结果为:

第1种重载形式: 3+5=8
第2种重载形式: 3+5.5=8.5
第3种重载形式: 3+5+7=15


定义重载方法时,需要注意以下两点:

相关文章