一、异常的概念
异常是任何中断正常程序流程的错误条件
产生异常的条件:
1.尝试被0除
2.数组索引超出了边界
3.请求不能正常完成I/O操作
4.尝试使用空引用。
5.尝试执行违背某种安全措施的操作。
……
由于C#是面向对象,所有所有的错误被封装在异常对象中 一旦错误发生,将接收到一个特定的异常对象。
二、异常类
系统异常:一般不可预测,比如内存堆栈溢出,空对象引用,权限限制,硬件读取错误等等
应用程序异常一般可以预测,比如文件对象找不到啦,值不在范围内啦,数据类型不一致等 等,设计,处理逻辑可以判断的
常见的异常类如下:
常见的系统异常类如下:
三、异常的处理
try 用于检查发生的异常,并帮助发送任何可能的异常。
catch 以控制权更大的方式处理错误,可以有多个catch子句。
finally 无论是否引发了异常,finally的代码块都将被执行。
throw 用于引发异常,可引发预定义异常和自定义异常。
四、对于异常的情况处理:
1.不处理
2.在捕捉处进行
3.跳到另一个地方处理(throw):如果没有在捕捉在异常发生的地方进行处理,那么就会存在异常传播。
五、自定义异常
自定义异常类必须要继承 Exception 类
自定义异常的语句如下:
抛出自己的异常,使用关键字throw,语句如下: