构造函数(一本正经的讲构造函数 如果想看不正经的往下翻看方法重载)
方法名称与类名相同,没有返回值类型,连void都没有
用作给类的对象初始化
一个类中可以有多个构造
如果手动添加一个构造,系统不会自动生成无参构造
定义一个Person类,之中有string类型的姓名,int类型的年龄和枚举类型的性别(male,female)
创建两个构造函数
构造函数用作给对象附初值 在新建一个类的对象时都会调用类的构造函数
例如 Person p=new Person(); 括号内就是构造函数的参数
一个方法可以有多个构造函数 参数列表必须不同(方法重载)
调用有三个参数的构造函数为Person类对象附初值Person p = new Person("斯沃",18,0);
调用无参方法Person p1=new Person();
比如呢 计算器计算加法 两个整数也能相加,两个小数也能相加,一个整数一个小数也能相加
为了实现如上功能,我们该怎么办呢
我们可以写四个方法,分别叫做SumIntAndInt(int a,int b) SumIntAndDouble SumDoubleAndInt SumDoubleAndDouble
啊四个方法
是不是看起来很高端
但是并没有什么卵用 首先名字很长并且都要是不同的名字
其次调用起来的话并不知道传进去什么参数,该用什么类型
那么 该怎么办呢,怎么办呢
其实C#里可以定义多个方法名相同的方法 这就是方法的重载
方法重载
在同一个类里 方法名称相同
方法参数列表不同(个数 类型 顺序)
与方法的返回值没有任何关系
对对对对对对 如你所见他并不会报错
但是不能定义两个参数列表完全相同的方法,只要类型或者个数或者顺序不一样都可以成功
如你所见 不抵了 因为参数列表完全相同 就算返回值类型不同也不行 返回值类型跟方法重载没有半毛钱关系!!
神奇的是这样就可以了!
然后我们在Main方法里就可以调用这四个重载的方法
比如Sum(1,2) Sum(1.1,2) Sum(1,2.1) Sum(1.1,2.2)
他都可以运行然后返回结果
是不是很神奇
是不是很鬼畜
嗯就是这样
今天的内容讲完了