C#中构造函数的作用

发表于:2015-7-03 09:39

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Mask-male    来源:51Testing软件测试网采编

  简单的来说构造函数就是用来创建对象用的,说的专业些叫实例化对象。
  定义:
  class A
  {
  public A(){}
  }
  使用:
  A a=new A();//在这里,A()就是就是构造函数。
  需要注意的一点是,如果类里面没有定义构造函数,编译器也会自动生产一个空构造函数,类的各个成员都赋上默认值。
  但是如果在类里面只定义了一个私有的构造函数的时候,那么这个类将不能被实例化。
  class A
  {
  string a;
  private A() { }//这个类不能被实例化
  }
  如果我们定义了带参数的构造函数,而没有定义不带参数的构造函数,那么在实例化这个类的对象的时候必须提供参数。
  class A
  {
  string a;
  public A(string str) {a=str; }
  }
  不能这么实例化对象 A a=new A();
  构造函数分为动态构造函数和静态构造函数。
  动态构造函数是类或结构实例化时,为其分配内存空间,完成类或结构当中成员变量的初始化工作。动态构造函数可以重载,即相同构造函数名称拥有不同类型和数目的多个构造函数。带参数的构造函数和不带参数的构造函数没有本质区别,带参数的构造函数可以通过传入的变量控制或者直接初始化其中的成员变量,在构造函数中可以为成员变量初始化默认值。
  静态构造函数不允许携带参数,即一个类中只允许有一个静态构造函数。它在第一次访问静态成员或者第一次实例化动态该类的对象之前调用。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号