TypeInitializationExeption异常
TypeInitializationExeption异常在MSDN中说明为:当类初始值设定项不能初始化类型时,将创建TypeInitializationExeption并向其传递由该类型的类初始值设定项引发的异常引用。
这句话的意思是:
当引用一个含有静态成员的类时,如果给静态成员初始化时,发生异常,那么就会产生此异常。
public class ClassName
{
public static int m = int.Parse("d");
public ClassName
{
}
.......................
}
当第一次引用此类时,语句public static int m = int.Parse("d"); 就会被执行,此时就会报出 TypeInitializationExeption类型的异常。
由这个类子可以得出几点结论:
1. .net 里面 类中静态成员总是在此类被第一次引用时被定义,这个定义比此类的构造函数要更早执行。
2. 如果静态成员初始化时,出现异常,同时也没捕获,那么系统会创建一个TypeInitializationExeption类型异常抛出。