首页 / 软件开发 / .NET编程技术 / 浅谈Try catch finally与using
浅谈Try catch finally与using2011-01-22 博客园 Will Meng对于Try catch finally,大家应该都不陌生,您接触的写法可能会是下面的记几种类型:Try catch (您可以匹配多个catch)try
{
}
catch (Exception)
{
throw;
}
Try finally
try
{
}
finally
{
}
Try catch finally (同样,你一样可以匹配多个catch)Try catch finally
try
{
}
catch (ArgumentNullException e)
{ }
catch (Exception ex)
{ }
finally
{
}
在这里,finally的作用简单的一句话说就是“无论try里面的代码正常执行或者发生异常,都会继续执行finally里面的代码”,所以我们一般会在finally里面执行我们的一些清理操作。尤其对于操作一些非托管资源或者比较珍贵的资源的时候,执行必要的清理操作显得尤为重要,具体的解释您可以参考MSDN。说了这些,我们来看看try finally,不知道您平时是使用try finally,还是会使用更简洁的语法using {}。对于using, 我这里并不是想详细的解释它的用法,如果您想了解,您请看这里。我们都知道using只是为了让语法变的更简洁而已,我不知道在这里用语法糖这个词来形容它是否合适。为了验证try finally和using是否一致,我再次查看了编译之后的代码(这里我还是使用MSDN的例子):代码{
Font font1 = new Font("Arial", 10.0f);
try
{
byte charset = font1.GdiCharSet;
}
finally
{
if (font1 != null)
((IDisposable)font1).Dispose();
}
}