探讨一下静态构造函数(一)(C#版)

静态构造函数是C#的一个新的特性。这里的"新"有别于C++。这是一个特殊的构造函数,它在创建类的第一个对象(实例)之前被调用。执行时间不能确定,但它肯定是创建实例之前。可能当时加载程序集。

下面看一下静态构造函数的代码语法:

public class myClass
 {

      static myClass()

       {  

       } 

}

构造函数的一些提示:

1)在一个类里面只有唯一的一个静态构造函数,即静态构造函数不能重载。

代码如下:

//这是允许的 ,因为它们在执行时间上面是完全不同的。

public class myClass
 {

      static myClass()

       {  

       } 

      public myClass()

     {

     }

}

2)静态构造函数应该没有参数。这是因为静态构造函数由CLR来调用的,没有用户可以传递参数给它。

3)静态构造函数只可以存取类的静态成员。这是因为在类的实例成员具体到对象实例,因此静态函数如果允许运行实例成员,将会反应到所有对象实例的变化,这是不切实际的。

4)在静态函数的定义中不应该获得修改。这是因为静态函数的调用是由CLR来控制的,而不是对象。因此你不需要也无必要去修改。

posted @ 2007-10-13 15:13  goalbell  阅读(150)  评论(0)    收藏  举报