构造方法的作用
构造方法的主要作用就是为类中的成员变量进行初始化。
<!--构造的注意事项 -->
1、构造方法名必须和类名相同。
2、构造方法能够添加参数。
3、构造方法可以进行重载,系统根据参数不同选择调用符合的构造方法。
4、构造方法可以不写,系统会添加一个默认的无参构造方法。
5、构造方法可以是私有的,私有后不允许通过该构造方法初始化对象。
6、构造方法会在创建对象或者第一次访问静态成员的时候调用。
系统默认的构造:
public class student { //系统默认生成的构造方法
public student() { } }
通过构造方法初始化成员变量:
首先定义几个属性,例如:
public string name;//姓名
public string sex;//性别
public int age;//年龄
public int height;//身高
public int weight;//体重
public string beizhu;//备注
构造方法的参数可以是所有属性参数,也可以是其中几个,比如:这是一个带有所有属性参数的构造方法
public student(string name, string sex, int age, int height, int weight) { this.name = name; this.sex = sex; this.age = age; this.height = height; this.weight = weight;
this.beizhu = "使用的是第一个构造方法(全部参数)";
}
这是一个只有两个属性参数的构造方法
public student(string name,string sex) { this.name = name; this.sex = sex;
this.beizhu = "使用的是第二个构造方法(部分参数)"; }
以上代码写在student类中,那么怎样在别的类中调用呢,如下代码写在Main方法里:
//这是主方法
class Demo { static void Main(string[] args) { student stu = new student("王明", "男", 18, 180, 90); Console.WriteLine(stu.name + stu.beizhu); student stu2 = new student("李华", "女"); Console.WriteLine(stu2.name + stu2.beizhu); } }
stu和stu2都是student的实例化,但是参数不同,所以对应的是两个不同的构造方法,看输出结果:
那如果你不写构造方法呢,该怎么调用方法里边的属性呢
那就需要这样
static void Main(string[] args) { //student stu = new student("王明", "男", 18, 180, 90); //Console.WriteLine(stu.name + stu.beizhu); //student stu2 = new student("李华", "男"); //Console.WriteLine(stu2.name + stu2.beizhu);
student stu = new student(); stu.name = "星籁歌姬"; stu.sex = "男"; stu.age = 19; stu.height = 185; stu.weight = 120; }
一条一条的给方法的属性赋值,灰常的不够银杏,灰常的麻烦,所以构造方法还是更方便一点
原创内容转载请注明:https://www.cnblogs.com/ccgn/articles/16149719.html