静态构造函数想必网上有很多解释,能搜索的人基本上随随便便就能搞到一堆资料的
直接上了,不详细解释了
public class Class1
{
private static Dictionary<string,string> _TestDictionary;
static Class1()
{
_TestDictionary=new Dictionary<sstring,string>();
}
public static void Method1()
{
_TestDictionary.Add(key,value);
}
}
静态构造函数只会在开始使用这个类之前 调用一次,仅仅调用一次
如果不写静态构造函数的话
Class1.Method1()
这个就会出错,没有实例化
那就必须写
private static Dictionary<string,string> _TestDictionary=
new Dictionary<string,string>();
当需要复杂情况下就会特别繁杂,就可用到静态构造函数
需要注意的是任何构造函数,都最好确保不会产生异常,如果出现问题的话,你是捕捉好还是向外抛一场好
这个问题特别难抉择
比如你需要init 一个反射,那么将反射全部放入到静态构造里面,如果这个反射反射的是内部程序集
那么就能自己确保不出错,这样就ojbk了
还有一个应用地方
单实例,做在这个地方,那是相当的完美啊,嘎嘎