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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM