在构造函数中尝试/ catch块

时间:2010-02-18 03:30:14

标签: c# constructor exception typeinitializer

在构造函数中使用try / catch块是一种糟糕的编程习惯吗?或者只要我们的程序优雅地处理typeinitializer异常,它就没有任何区别。

在C#中,如果构造函数中有任何异常,框架总是抛出typeinitilizer异常。

谢谢, Shamika

1 个答案:

答案 0 :(得分:21)

static 构造函数抛出异常而不是实例构造函数时,抛出

System.TypeInitializationException。实例构造函数中通常会抛出异常。

除此之外,与其他地方相比,它没有任何“错误”;处理可以正常恢复的异常,并允许那些你不能冒泡的异常。