C# 重载与重写

重载(overload)

指调用同一方法名,但各方法中参数的数据类型、个数或顺序不同。

        public static int Add(int x,int y)
        {
            return x + y;
        }
        public double Add(int x,double y)
        {
            return x + y;
        }
        public int Add(int x, int y, int z)
        {
            return x + y + z;
        }

注:

  • 方法名必须相同
  • 参数列表必须不相同
  • 与返回值类型无关
  • 在同一个类中

重写(override)

子类中为满足自己的需要来重新编写父类中某个方法的实现方式,被重写的方法必须是虚方法

    public class Class1
    {
        public int X { get; set; }
        public int Y { get; set; }

        public virtual int Add()
        {
            return X + Y;
        }
    }
    public class Class2 : Class1
    {
        public override int Add()
        {
            return base.Add();
        }
    }

注:

  • 方法名相同
  • 参数列表相同
  • 返回值相同

 

原文地址:https://www.cnblogs.com/zhaoyl9/p/11653656.html