C#之构造函数

//构造器的名称必须与类名相同,且没有返回值

class A : Object{ //这表示类A继承Object

  public A() : base(){} //这表示引用的是父类Object的构造函数

}

 

//this的概念不是类本身,而是表示类创建后的实例 

 

// 调用无参构造函数

class B{
public B(){}

public B(int i) : this() {} //:this()表示首先调用B的无参构造函数

public B(string s) : this(){}  //:this()表示首先调用B的无参构造函数

}

 

//如果类B继承于类A,那么类B会默认调用类A的无参构造器,要是类A有包含参数的构造器,那么必须在类A显示编写一个无参的构造器 

 

//如果类B需要调用类A的有参数的构造器,需要如下:

 class A{

public A(){}

public A(int i){} 

}

 

class B : A{
  public B() : base(3){} //调用类A的有参构造器

}

 

静态构造器: 静态构造函数是实现对一个类进行初始化的方法成员。它一般用于对静态数据的初始化。静态构造函数不能有参数,不能有修饰符而且不能被调用,当类被加载时,类的静态构造函数自动被调用。

 主要作用:对类的静态成员进行初始化

 注意:

1.  在一个程序的执行过程中,静态构造器最多只执行一次

2.  静态构造器在类的静态成员初始化之后执行

3.  静态构造器在任何类的静态成员被引用之前执行 

4.  静态构造器在任何类的实例变量被分配之前执行 

class A{
  static A(){} //静态构造器

}

 

posted on 2012-05-25 22:14  lee0oo0  阅读(776)  评论(0编辑  收藏  举报