首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在带有try-catch-finally的语言中,有没有可能为所有异常处理程序执行操作?

在带有try-catch-finally的语言中,有没有可能为所有异常处理程序执行操作?
EN

Stack Overflow用户
提问于 2011-04-28 21:37:32
回答 5查看 126关注 0票数 2

是否有任何语言支持类似下面的构造,或者是否有使用无处不在的try-catch-finally实现这一点的好方法?

代码语言:javascript
运行
复制
try
{

} catch(Exception1 e)
  { .... }
  catch(Exception2 e)
  { .... }
  catch-finally
   {
      //Perform action, such as logging
   }
  finally
   {
     //This always occurs but I only want to log when an exception occurs.
   }

我知道这取决于特定的语言,但是在Java,C#,C++,PHP等语言中有这样的支持吗?

EN

Stack Overflow用户

发布于 2011-04-28 21:44:55

您可以在C#中轻松实现这一点。一种简单的方法是将异常保存在catch块中,如果exception对象不为空,则在finally块中记录该异常。

代码语言:javascript
运行
复制
Exception ex;

try
{

}
catch (ExceptionType1 type1)
{
    ex = type1;
}
catch (ExceptionType2 type2)
{
    ex = type2;
}
finally
{
    if (ex != null)
    {
        //Log
    }
}
票数 0
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5819503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档