《C#异常处理》
1、c#中所有的异常处理都被视为类,所有异常都是由System.Exception所派生的。
2、C#中处理错误异常管理的关键字指令有四个:try、catch、throw、finally,有这四个关键字所编写的异常处理功能非常的强大与方便。
3、异常处理的语法:try{有可能产生错误的代码}catch(异常处理声明(声明此catch区段要捕获哪一种类型的异常错误,可以不用声明,这样子便会让catch去捕获任意类型的异常错误)){异常处理程序代码(当catch捕获到异常错误后,所采取对应的程序代码)}注意:利用catch来捕获try-catch中产生的异常错误,可以建立多个catch区段以捕获不同类型的异常错误。
3、C#中常见异常类:
类 |
说明 |
OutOfMemoryException |
当利用new关键字去初始化分配一块内存失败时 |
StackOverflowException |
当执行程序有利用到堆栈资源时(通常是执行Recursion或太多的循环),将堆栈资源耗尽时 |
NullReferenceException |
当要利用Reference对象时,却是NullReference |
TypeInitializationException |
若静态对象发生错误,但又缺乏catch区段去处理与对应时 |
ArrayTypeMismatchException |
当存入数据与数组中数据类型不同时 |
IndexOutOfRangeException |
当超过数组的限定范围时 |
MulticastNotSupportedException |
当要合并两个委派对象失败时 |
ArithmeticException |
一般在运算失败时,这包含了DivideByzeroException与OverflowException两种异常 |
DivideByzeroException |
当使用除法运算时,分母为0所造成的错误时 |
OverflowException |
当运算后超过数据类型的合法范围时 |