C# try...catch...throw

try..catch..throw是C#里面处理异常的机制;
我们在编码时,无论是在业务逻辑处理还是数理运算,都有可能有想不到的情况发生,比如在做基本算数运算时,可能出现溢出或者除零等问题,那么这就需要一种机制来处理这种异常,增强软件的性能和稳定,try catch throw 就是用来处理异常的。

try 代码块中一般存放业务处理逻辑代码,比如尝试打开数据库连接时、处理业务运算时等,放在try内部的所有代码,一旦出现未知的异常情况,Try代码块中的代码便终止运行,而是跳到catch中,如果不放在Try内部,一旦出现异常,程序将面临崩溃。

catch代码块和try匹配出现,用于处理try块中出现的异常。
try后可以有多个catch,根据catch(异常类型)中的异常类型执行最匹配的一个;
try后可以不跟catch,但必须有跟着finally(try后有catch时也可以跟着finally)

finally:无论代码正常执行还是出现异常,该代码块中的代码都肯定执行,所以可以放一些关闭数据库连接或者释放内存的代码在这里。

什么时候用try呢?try使用的多了或许能有效的避免系统因异常而崩溃,但是过多的使用try会降低系统性能,给你介绍一下try在程序运行时的大体过程:
当程序运行到try起点时,会在栈中存放一个地址记录入口点,当try执行完毕后要找到入口点,所以是有开销的。

给你个建议:
设计到运算、逻辑处理、业务运算等操作时,一定使用异常处理,定义或实例化变量时不建议使用。

原文地址:https://www.cnblogs.com/DannyShi/p/4608186.html