【C#】构造方法

C#构造函数

构造函数是一种特殊的成员函数,它主要用于为对象分配存储空间,对数据成员进行初始化.
构造函数具有一些特殊的性质:
(1)构造函数的名字必须与类同名;
(2)构造函数没有返回类型,它可以带参数,也可以不带参数;
(3)声明类对象时,系统自动调用构造函数,构造函数不能被显式调用;
(4)构造函数可以重载,从而提供初始化类对象的不同方法;
(5)若在声明时未定义构造函数,系统会自动生成默认的构造函数,此时构造函数的函数体为空.
(6)静态构造函数,用static修饰,用于初始化静态变量,一个类只允许有一个构造函数,在类实例化时加载,这时修饰符public、private失去作用.
(7)可以使用public、protected、private修饰符。.
(8)引用父类构造时用():base()方法,引用自身重载的构造使用():this(int para).
(7)可以使用public、protected、private修饰符。
注意:
1、定义了一个带参构造函数后,最好定义一个无参构造函数,这样可以避免子类调用时出错
2、调用基类构造函数:base() 或 :base(参数列表)  调用本类其它构造函数 :this() 或 :this(参数列表)
3、只有在用base显示调用父类的构造函数时,程序才不会默认的调用不带参数的构造函数。


this关键字后面跟":"符号,可以调用其它的构造函数

  #region 对象的构造函数
        //声明有实现的构造函数
        public Person()
        {
            this.NAge = 100;
            Console.WriteLine("我是超人!");
        }

        public Person(int nAge)
        {
            Console.WriteLine("超人的年龄{0}", nAge);
        }
     //使用this关键字调用了第二个一个参数的构造函数
        public Person(int nAge, string strName)
            : this(1)
        {
            Console.WriteLine("我是叫{0}的超人,年龄{1}", strName, nAge);
        }
        #endregion


会先调用 一个参数的构造方法  然后在调用两个参数的构造方法


参考文章:http://wiki.jikexueyuan.com/project/csharp-confusing-concepts-summary/constructor-this-keyword.html

                 http://dbajun.iteye.com/blog/197089

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Unity_阿黄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值