C# 异常处理与委托事件详解
异常处理
在程序运行过程中,异常处理是一项非常重要的任务。当异常被抛出时,运行时会检查第一个异常处理程序。例如,当抛出 DivideByZeroException 异常时,如果第一个异常处理程序不匹配,运行时会继续检查下一个处理程序,直到找到匹配的处理程序。
需要特别注意 catch 语句的顺序。因为 DivideByZeroException 是从 ArithmeticException 派生而来的,如果颠倒 catch 语句的顺序, DivideByZeroException 会匹配 ArithmeticException 处理程序,导致 DivideByZeroException 处理程序无法被执行,编译器会识别到这种情况并报告编译错误。
在捕获通用异常时,通常最好通过调用异常的 ToString 方法来尽可能多地记录异常信息。以下是对之前示例进行修改的步骤:
1. 将 b 的声明值从 0 改为 2。
2. 取消倒数第二行代码的注释。
3. 注释掉最后一行代码(因为现在它将无法访问)。
输出结果可能如下:
Log this: System.SystemException: System error.
at Spec
超级会员免费看
订阅专栏 解锁全文
1182

被折叠的 条评论
为什么被折叠?



