.net中的异常(exception)

.net中的中异常的父类是exception,大多数异常一般继承自exception。

可以通过编写一个继承自exception的类的方式,自定义异常类!

异常处理机制

try

{

    可能发生异常的代码

    后续代码     

}

try以外的代码

catch(exception e)

{

}

finally

{

}

上述代码描述如下

1.谁能执行 在异常处理中,一旦try里面有了问题,程序会放弃异常的后续代码直接跳到catch中。

执行完了catch中的代码,继续执行try以外的代码。

2.关于catch()中的参数e

e就是发生异常的异常类对象,可以任意取名。不是必须叫e的。

3.只抛一个

一块try中的代码只能抛出一个异常。

为什么呢?

因为一旦异常就抛出了啊,后面有也不执行了呀!

4.获取信息

可以通过 e.message获取异常信息

5.必须执行

finally  无论如何都会执行

6.可以没有catch

可以只有 try catch

也可以只有try  finally

优秀的异常处理作风

1.不要逃避问题不要只把异常catch住,什么都不做,或者只是打印一下,这不是优秀的“异常处理”作风。

不知道怎么处理异常,就不要catch。让他暴露出来。既然发生异常了,问题就肯定是有的,逃避不是办法,直面他,才能解决他。尤其在分层的项目中。会让程序陷入深度的逻辑混乱状态。而问题被藏起来了,你甚至不知道哪里发生了问题。

2.如果真的遇到乱try、catch的程序员怎么办?

vs很强大,它想到了这种情况。点击【调试】【异常】进入这样一个工具,选中第二行 的引发选项。