C#跟其他语言一样,在编写代码的过程中都会或多或少的出现语法或者逻辑上的错误,如果盲目相信自己的技术只能让这些异常的程序继续存在,最终导致系统无法正常运行甚至瘫痪。技术上要保证代码不出错的同时我们也要给自己留有余地,一般的编程语言都会有异常处理机制,熟练掌握对异常的处理,也是保证我们程序可靠性的前提。
根据前面学习过的vb6.0,的异常处理,在学习c#,的异常处理就很同意理解,原理上都是一样的,只是语法略有区别。vb中我们用的是on error 语句,c#中刚学习了try catch,这两种方法都能够有效地捕捉到异常,并且能按照程序员的指令有效处理。
on error 与try catch的区别与联系:
on error语句可以捕捉错误它的语法如下:
on error goto 标签或标号 '出现错误时程序转向标签或标号处继续执行
on error resume next '出现错误时程序转向下一条语句继续执行
on error goto 0 '出现错误时程序转向出错语句继续执行
try catch语句同样也可以捕获异常, 它把可能发生异常的代码放在try语句中,一旦发生异常就转入了catch执行。
关键字:
try 用于检查发生的异常,并帮助发送任何可能的异常。
catch 以控制权更大的方式处理错误,可以有多个catch子句。
finally 无论是否引发了异常,finally的代码块都将被执行。
语法:
try
{
//可能有异常的代码,一旦有异常跳转至catch执行,没有异常则不跳转
}
catch
{
//try中的代码出现异常时执行的代码
}
finally
{
//无论什么情况都要执行的代码,即只要执行了try或者catch任意一个,finally就会被执行
}
无论是on error 还是try catch都是捕获错误而后跳转至指定的语句继续执行,如果没有异常都不会执行指定的处理语句。两者不同的是在vb中on error 语句放在可能出错的语句前面,而在c#中把可能出现异常的语句放在try语句之中。两者语法上略有差别,但原理上是一致的,在捕获异常之后跳转至指定的语句执行,避免了因异常而出现的系统不能正常使用。编程语言中的异常处理机制非常重要,只有把技术优势和语言优势充分利用才能做出更好的软件!全心全意为人民,我们做的还不够……