using System; class A { //静态构造函数用来初始化类的静态成员,使用类A时会自动调用,且不管该类有多少实例对象,该函数只执行一次 static A() { Console.WriteLine("类A静态构造函数被调用"); } public A() { Console.WriteLine("类A默认构造函数被调用"); } public A(int i) { Console.WriteLine("类A带参构造函数被调用"); } } class B:A { public B() { Console.WriteLine("类B默认构造函数被调用"); } public B(int i):base(i)//base关键字,指定调用基类某个版本的构造函数 { Console.WriteLine("类B带参构造函数被调用"); } } public class Test { static void Main() { //类A实例化了两次,但其静态构造函数只执行了一次 A a = new A(); A a1 = new A(); Console.WriteLine(); //实例化类B的时候,会首先调用其基类A的默认构造函数;当需要指定调用基类其他版本构造函数时,需用base关键字 B b = new B(); B b1 = new B(100); } }
原文链接:http://www.cnblogs.com/ArmyShen/archive/2012/08/27/2657916.html