C#中构造方法是什么
构造方法的作用
构造方法的主要作用就是为类中的成员变量进行初始化。
<!--构造的注意事项 -->
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