合作开发——VB.NET异常处理

相对于VB语言来说,vb.net的一项特殊的功能就是异常处理,下面简单介绍一下异常处理:

捕获并抛出异常:

异常处理是用Try...Catch...Finally...End Try语句实现的,其基本语法形式如下:

VB.NET结构化异常处理在代码中提供如下部分:

  Try 段:可以产生一个异常,并且总是能够被执行到的代码段

  Catch段:试图对一个异常做出处理,当异常发生时就会被执行的代码段

  Finally段:进行一些清理工作,并且总能被执行到的代码段

  异常类

  .NET中的每一个异常类都是由System.Exception类派生的。异常类中使用最频繁的成员如下:

  消息:描述一个错误的具体信息

  源:引起这个异常的对象或应用程序名

  目标:处理异常的方法

  Try...Catch区块

  Try...Catch区块的目的是允许捕捉错误并为其指定一个具体的VB.NET结构化异常处理解决方法。代码看起来就像下面这样:

  Try '被执行的代码 Catch '错误解决代码 Catch 结束

  用Try段来写那些要被执行到的代码,而用Catch段来捕捉当执行Try段代码时可能产生的错误,并做出相应的反应。在Try段中出现的保护代码总会被执行到;但是,Catch段的代码只有当错误发生时才会被执行。代码的Try段总会被执行。

  Try...Catch...Finally区块

  使用Try...Catch...Finally区块的目的是允许执行Try段中被保护的代码,对Catch区块中可能的任何错误做出反应,并且在随后的Finally区块中还有清理代码。无论Try代码区块是否有错误发生,Finally区块中的代码都会被执行到。这样可以很方便的保证分配的资源会被释放,并且可以方便地提供那些不论错误控制细节如何,都要需要被执行的各种功能的函数。代码例子如下:

  Try '执行代码 Catch '错误解决代码 Finally '清理代码 Catch 结束

为了抛出一个异常,可以编写下面的代码:

Throw New Exception

传播异常

  当一个异常出现于你的代码的某处时,你可以以三种方式传播它:

  ·什么也不做而让它自动地传播回调用栈(由系统自动处理)。

  ·捕获并再次抛出它。这可以允许你在Finally块中运行一些清理代码。

  ·捕获它,并使用InnerException属性在另一个异常中包装该异常,并且把这个新的异常抛回调用过程。这个InnerException属性可以让你维持原始的异常并在一个关系更为密切的异常中存放它的信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值