C#之try-catch-finally的使用(超级详细!)

概述:

try-catch是一种报错机制,捕捉C#中的异常,下面小编就带大家看看try-catch具体的使用原则,

语法:

try
{
    //有可能出现错误的代码写在这里
}
catch
{
    //出错后报出异常
}
finally
{
    //不管什么情况都会执行,包括try-catch里面用了return,可以理解为只要执行了try或者catch,就一定会执行finally
}

理解:

如果try中的代码没有出错,则程序正常运行try中的内容,不会执行catch中的内容

如果try中的代码一旦出错,程序立即跳入catch中去执行代码,抛出异常,此时try中出错代码后的所有代码就不再执行了

finally可以没有,也可以只有一个,如果存在finally,无论有没有发生异常,它总会在这个报错机制机构的最后运行,这里可以填写如:关闭数据库,关闭窗体等。

注:如果没有catch语句块,那么finally就必须存在。如果你不希望在这里处理异常,而当异常发生时提交到上层处理,但在这个地方无论是否发生异常,都必须要执行一些操作,就可以使用try-finally,比如:进行数据库操作。

catch的几种写法:

catch  :捕获任何发生的异常。

catch(Exception e)  :将捕获任何发生的异常。另外,还提供e参数,你可以在处理异常时使用e参数来获得有关异常的信息。

catch(Exception的派生类 e)  :将捕获派生类定义的异常,例如安卓中文网,我想捕获一个无效操作的异常,可以如下写:

catch(InvalidOperationException e) {     .... } : 如果try语句块中抛出的异常是InvalidOperationException,将转入该处执行,其他异常不处理。 

注:catch可以有多个,也可以没有,每个catch可以处理一个特定的异常。

总结:

此方法的好处是能够快速发现程序里的错误,但是一般新手不会使用try-catch,因为出错后,只知道它出错了,并不知道什么原因出错,不能准确的定位到哪行代码出错,但是使用try-catch会提高效率,因此建议大家使用。

猜你喜欢

转载自blog.csdn.net/TGB_Tom/article/details/109630976