日期:2014-05-17  浏览次数:20871 次

(C#)异常及处理.

(C#)异常及处理.


异常时程序运行时发生的错误,它违反了一个系统的约束或应用程序的约束,或出现了在正常操作时未预料的情形。

?

try 语句指明被异常保护的代码块,并提供代码以处理异常,有3个部分组成。
?- try块: 包含正被异常保护的代码。
?- catch子句:对try块抛出的异常的处理。
?- finally块: 无论try块中有没有异常抛出都要执行的代码。

?

异常类.
BCL定义了许多类,每个类代表一个指定的异常类型,当一个异常发生的时候,CLR 创建该类型的异常处理. 寻找适当的catch 子句处理.
所有的异常类都派生自System.Exception类.
System.Exception
?????? ┣ SystemException: 所有预定义系统共异常的基类.(IndexoutOfRangeException, NullReferenceExeption, IO.IOException ...)
?????? ┗ ApplicationException : 所有非致命的,应用程序定义的异常的基类.

?

异常对象含有只读属性,带有导致该异常的信息。
---------------------------------------------
属性???????????? 类型??????????? 描述
---------------------------------------------
Message ?string ??解释异常原因
StackTrace ?string ??描述异常发生在何处
InnerException ?Exception ?对前一个异常的引用,当前异常是由前一个异常引起.
HelpLink?string ??为异常信息提供URN或URL
Source ??string ??异常起源所在的程序集的名称
----------------------------------------------

?

抛出异常.
使用throw语句可以使代码显式地引发一个异常。
throw ExceptionObject;

?