异常处理
在编码期间,经常出现意外错误,这需要调试和测试。但有时错误确实是预期的并且绕过它,有 Try..Catch..Throw..Finally..End Try
块。
为了正确地管理错误,将代码放入 Try..Catch
块中,其中 Catch
(如名称所示)将捕获此块中出现的所有异常。
在异常的情况下,我们有可能知道错误,即返回它以通知用户或在代码本身内部管理它。
Finally
部分是最终代码,无论结果是什么,如果有异常,代码将在走出块之前运行。
如果我们需要弹出时钟,可以使用 Exit Try
语句。但是在这里,Finally
部分中的代码将在结束之前执行。
语法很简单;
Try
[ tryStatements ]
[ Exit Try ]
[ Catch [ exception [ As type ] ] [ When expression ]
[ catchStatements ]
[ Exit Try ] ]
[ Catch ... ]
[ Finally
[ finallyStatements ] ]
End Try
只有 Try
和 End Try
是强制性的。其余的可以忽略,但作为一个好的做法,确实包括 Finally
部分,即使它是空白的。
来到异常,可以捕获不同类型的异常。它们是 .Net Framework 提供的现成例外,如下所示;
例外类 | 简要描述;简介 |
---|---|
System.IO.IOException | 处理 I / O 错误 |
System.IndexOutOfRangeException | 指的是超出范围的数组索引 |
System.ArrayTypeMismatchException | 当类型与数组类型不匹配时 |
System.NullReferenceException | 处理引用空对象时生成的错误。 |
System.DivideByZeroException | 处理将被除数除以零所产生的错误。 |
System.InvalidCastException | 处理在类型转换期间生成的错误。 |
为 System.OutOfMemoryException | 处理由于空闲内存不足而产生的错误。 |
System.StackOverflowException | 处理堆栈溢出产生的错误。 |
-————————– | -———————– |