马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

C#中异常及异常处理【转】

[复制链接]
查看3984 | 回复2 | 2015-7-17 09:47:01 | 显示全部楼层 |阅读模式
.NET中的异常(Exception)

.net中的中异常的父类是Exception,大多数异常一般继承自Exception。
可以通过编写一个继承自Exception的类的方式,自定义异常类!

异常处理机制

[C#] 纯文本查看 复制代码
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很强大,它想到了这种情况。点击【调试】【异常】进入这样一个工具,选中第二行 的引发选项。

www.ibcibc.com,IBC编程社区,C#,C#教程,C#论坛

www.ibcibc.com,IBC编程社区,C#,C#教程,C#论坛





这样在调试的时候,无论是否try  catch都会暴漏出异常。我们想要的信息就找到了。




C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
卖烤地瓜的 | 2015-7-17 09:52:43 | 显示全部楼层
沙发
崽崽 | 2015-7-28 20:09:43 | 显示全部楼层
选中 右键 外侧代码也可以呦
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则