美文网首页
C#-构造函数

C#-构造函数

作者: 祝你万事顺利 | 来源:发表于2019-08-22 16:24 被阅读0次

    创建一个类的时候,使用new运算符对类进行实例化。在为新对象分配内存之后,new运算符立即调用构造函数。

    不带参数的构造函数称为“无参构造函数”。除非类是静态的,否则C#编译器将自动为无构造函数的类提供一个公共的无参构造函数。

    可以通过将构造函数设置为私有构造函数,阻止类被实例化。

    结构(struct)类型的构造函数和类的构造函数类似,但是structs不包含显示无参构造函数,编译器会自动提供一个显示无参构造函数。只有使用new实例化struct时,才会调用无参数构造函数。

    int i = new int();
    Console.WriteLine (i);
    

    构造函数可以使base关键字调用基类的构造函数。

    public class Manager:Employee{
      public Manager(int annualSalary):base(annualSalary){}
    }
    

    在执行构造函数块之前会调用基类的构造函数。base关键字可带参数使用,也可不带。构造函数的任何参数都可以作base的参数,或用作表达式的一部分。

    在派生类中如果不适用base关键字来显示调用基类构造函数,则将调用隐式无参数构造函数(在有的情况下 )。
    如果基类没有提供无参构造函数,派生类必须使用base显示调用基类构造函数。

    构造函数可以使用this调用同一对象中的另一个构造函数。和base一样,this可带参数使用也可以不带参数使用。

    相关文章

      网友评论

          本文标题:C#-构造函数

          本文链接:https://www.haomeiwen.com/subject/tvansctx.html