C#异常处理

一、异常的介绍
异常实际上是程序中的错误导致中断了正常的指令流的一种事件,也就是说异常是任何中断正常程序流程的错误条件。

产生异常的条件:

  1. 想打开的文件不存在
  2. 网络连接中断
  3. 调用空引用
  4. 除0异常等

由于C#是面向对象,所以所有的错误都会被封装在异常对象中。一旦错误发生,将接收到一个特定的异常对象。

二、异常类
.NET Framework类库中的所有异常都派生于Exception类,异常包括系统异常和应用异常。

默认所有系统异常派生于System.SystemException,所有的应用程序异常派生于System.ApplicationException。

系统异常一般不可预测,比如内存堆栈溢出,空对象引用,权限限制,硬件读取错误等等。

应用程序异常一般可以预测,比如文件对象找不到啦,值不在范围内啦,数据类型不一致等等,设置,处理逻辑可以判断的。

三、异常处理

在C#语言中异常与异常处理语句即try…catch或者try…catch…finally。

在上述异常处理的形式中所用到的关键字其含义如下:

  1. try:用于检查发生的异常,并帮助发送任何可能的异常。
  2. catch:以控制权更大的方式处理错误,可以有多个catch子句。
  3. finally:无论是否发生了异常,finally的代码块都将被执行。

例如:

try
{
int a=2;
int b;
b=a/0;
Console.WriteLine(“被除数不能为0,出现异常”);
}
catch(Exception e)
{
Console.WriteLine(“捕捉到异常:{0}”,e.Message);
}
finally
{
Console.WriteLine(“出现异常我也能继续执行”);
}

上面的代码中出现了被除数为0的异常,在计算机里是不能被解析的,也就是计算机无法解读被除数为0。

异常出现,那么就会被下面的catch捕捉到,try里面出现异常都会中断程序,从而被catch捕捉,catch会捕捉try里面的任何异常。

最后的代码块finally,无论try是否出现异常,写在finally里的代码都会执行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值