参数封装快捷方式:ctrl+r+e
只读属性无法赋值
每个属性赋值需要一个单独语句,代码可读性变差,可以定义带参方法
一个类中可以定义多个方法的重载:
public Child() { }
public Child(string name,string sex,string age) { }
1.构造方法用于给属性赋值,也可用于属性是只读的情况,同时减少main方法赋值语句;
2.构造方法可以进行重载,与方法重载类似。
属性(属性就是字段的封装)
有参数的构造方法:
例如:public Child(string name,string sex,int age)
{
Name=name;Sex=sex;Age=age
}
调用的时候:Child child=new Child("小米",“男”,19)
1、利用有参构造方法对属性的赋值机制可以大程度降低代码量
2、可以定义多个重载的构造方法,只需参数的类型或个数不同即可
构造方法,访问修饰符必须用public,返回值类型啥都不能有,连void 都不行,构造函数名必须和类名相同。
构造方法用于给属性赋值,也可用于属性是只读的情况,如果属性是只读属性,可以采用将形参直接赋值给字段方法,同时减少main方法赋值语句; 2.构造方法可以进行重载,与方法重载类似。
Child child = new Child();//调用构造方法(构造方法的作用:为属性赋值)
Console.WriteLine("我的名字是{0}",child .Name );
//如果没有显示定义构造方法,则会有一个默认的无参数的构造方法。
//如果显示定义了构造方法(不管是有参无参),则没有默认构造方法。
//只能用new 方法名()的形式调用构造方法。
//1、构造方法通常声明位public(如果需要的话也可以是private),
//2、构造方法没有返回值类型,
//3、构造方法名字必须和类名相同。
有参数的构造方法:
例如:public Child(string name,string sex,int age)
{
Name=name;Sex=sex;Age=age
}
调用的时候:Child child=new Child("小米",“男”,19)
有参数的构造方法:
例如:public Child(string name,string sex,int age)
{
Name=name;Sex=sex;Age=age
}
调用的时候:Child child=new Child("小米",“男”,19)
C#中带参构造方法
构造方法的重载可以有多个,保证形参列表不一样即可。
对于只读的属性,可以在构造方法里调用封装前的字段进行赋值:
1、利用有参构造方法对属性的赋值机制可以大程度降低代码量
2、可以定义多个重载的构造方法,只需参数的类型或个数不同即可
值类型
字段
属性(属性就是字段的封装)
方法
只读属性不能赋值,可以直接给字段赋值