AI智能
改变未来

面向对象编程——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;}}}

然后在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);}}}

结果如下图所示:

从结果中我们可以发现,当出现我们没有定义的方法computer.Add(1, 1.2)时,系统自动选择了最合适的方法Add(double,double)去调用。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 面向对象编程——C#中如何进行方法重载