摘要
在C#中,方法的重载是指参数个数或参数类型不同的同名方法,用来实现类似的功能。
我们可以定义一些名称相同的方法,通过定义不同的输入参数来区分这些方法,然后再调用时,我们可以根据参数类型不同去选择我们所需要的。
正文
方法重载
在同一个类中,方法名称相同,但是参数列表不同(参数个数不同、参数类型不同、不同类型的排列顺序不同),称之为方法的重载,方法的重载不包含继承关系,重载不用考虑方法的返回值类型,重载类型顺序必须不同;
internal class Program{ static void Main(string[] args) { Add(1,2); Add(1,2,3); Add("A", "B"); } static void Add(int x, int y) { Console.WriteLine(x + y); } static void Add(int x, int y, int z) { Console.WriteLine(x + y + z); } static void Add(string a, string b) { Console.WriteLine(a + b); }}构造函数重载
只要符合重载的规则即可,重载函数常用来实现功能类似而所处理的数据类型不同的问题。
创建一个Person类
public class Person{ public Person() { Console.WriteLine("无参数重载"); } public Person(string name) { Name = name; Console.WriteLine("一个参数name重载"); } public Person(int id, string name) { Id = id; Name = name; Console.WriteLine("两个参数id,name重载"); } public Person(int id, string name, int age) { Id = id; Name = name; Age = age; Id = id; Name = name; Console.WriteLine("三个参数id,name,age重载"); } public int Id { get; set; } public string Name { get; set; } public int Age { get; set; }}Person person = new Person();Person person1 = new Person("张三");Person person2 = new Person(1, "张三");Person person3 = new Person(1, "张三", 30);重载好处
不用对不同的参数类型或参数个数,而写多个函数,就像设备启动是按一个键还是两个键或是多个键,我们只用取同一名字Start就可以了,只是参数不同,这个命名也简单不少,且容易懂。
在调用时VS可以根据不同的参数个数,顺序,类型,自动匹配方法。
| 留言与评论(共有 0 条评论) “” |