重载和重写的区别

Posted szmh9192

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重载和重写的区别相关的知识,希望对你有一定的参考价值。

1. 重载(overload):简单的说就是参数列表不同,个数不同/个数相同但类型不同/个数,类型都不相同.也可以是类型一样但顺序不一样.

技术分享图片
class Program
    {
        static void Main(string[] args)
        {
            int a = MyMath.Add(12, 36);
            Console.WriteLine("整数相加结果:{0}",a);

            float b = MyMath.Add(12, 36.36f);
            Console.WriteLine("浮点数相加结果:{0}",b);

            float ff = MyMath.Add(36.36f, 23);
            Console.WriteLine("浮点数和整数相加结果是:{0}",ff);

            double d = MyMath.Add(42.52, 23);
            Console.WriteLine("双精浮点数和整数相加结果是:{0}",d);

        }
    }
View Code

 

技术分享图片
class MyMath
    {

        public static int Add(int a, int b)
        {
            return a + b;
        }

        public static float Add(float a, float f)
        {
            return a + f;
        }

        public static double Add(double a, double f)
        {
            return a + f;
        }

        public static decimal Add(decimal a, decimal f)
        {
            return a + f;
        }

        //参数的类型相同,但顺序不同,构成重载。
        public static float Add(int a, float f)
        {
            return a + f;
        }

        public static float Add(float f, int a)
        {
            return a + f;
        }
       //参数的类型相同,个数不同,,构成重载
       public static int Add(int a)
        {
            return a;
        }

    }       
View Code

 2.重写(override):重写是用override来修饰方法,属性,索引器或事件,基类中函数的重写,为了实现多态

 

以上是关于重载和重写的区别的主要内容,如果未能解决你的问题,请参考以下文章

Java中重载(Overload)和重写(Override)的定义

重写和重载的三点区别

请简述重载和重写的区别

重载和重写有啥区别

请简述重载和重写的区别

重载与重写区别?