当前位置:   article > 正文

面向对象编程——C#中如何进行方法重载_c#程序可以依据( )来进行方法重载。

c#程序可以依据( )来进行方法重载。

C#中如何进行方法重载

方法重载的概念

C#语法规定,同一个类中多个方法使用同一名字,该方法就被称为“重载方法”。当一个重载方法被调用时,C#会根据参数的个数和类型自动调用最恰当的方法来执行。

使用场景

当类中存在多个相同功能的方法时,定义和调用过程中都会带来很大的麻烦,此时,可以考虑使用方法重载。

构成重载的条件有以下三个:

(1)在同一个类中

(2)方法名相同

(3)参数的类型或个数不同

方法重载的好处

主要体现在调用上,不需要记住更多的方法名称,相同功能的方法传递不同的参数,编译器会明确获取我们要调用哪一的方法。

方法重载演示

下面同过一个例子来演示方法重载的使用。

首先新建一个控制台应用程序,新建一个Customer类,接着在类中定义重载方法,代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FangFaChongZai
{
    public class Computer
    {
        //方法1,实现两个整数相加
        public int Add(int num1,int num2)
        {
            Console.WriteLine("实现两个整数的相加:");
            return num1 + num2;
        }
        //方法2,实现三个整数相加
        public int Add(int num1, int num2, int num3)
        {
            Console.WriteLine("实现三个整数的相加:");
            return num1 + num2 + num3;
        }
        //方法3,实现两个小数相加
        public double Add(double num1, double num2)
        {
            Console.WriteLine("实现两个小数的相加:");
            return num1 + num2;
        }
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

然后在Program中调用方法。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FangFaChongZai
{
    class Program
    {
        static void Main(string[] args)
        {
            Computer computer = new Computer();
            computer.Add(1, 1);  //调用带两个int类型参数的Add方法
            computer.Add(1, 2, 3);  //调用带三个int类型参数的Add方法
            computer.Add(1.5, 1.2);  //调用带两个double类型参数的Add方法

            //一个是int类型,一个是double类型,方法重载里面没有定义这样的方法
            //此时系统会选择最合适的方法去调用,会选择有两个double类型参数的方法去调用,将第             一个1变成double类型
            computer.Add(1, 1.2);
        }
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

结果如下图所示:
在这里插入图片描述
从结果中我们可以发现,当出现我们没有定义的方法computer.Add(1, 1.2)时,系统自动选择了最合适的方法Add(double,double)去调用。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/664316
推荐阅读
相关标签
  

闽ICP备14008679号