首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >加入catch块是很好的编码实践吗?

加入catch块是很好的编码实践吗?
EN

Stack Overflow用户
提问于 2019-04-26 04:07:12
回答 3查看 1.5K关注 0票数 0

我在做一些与服务有关的操作。下面的片段有效吗?

代码语言:javascript
代码运行次数:0
运行
复制
try {
          //some code here
    } catch (ServiceException e) {
                throw new ServiceException("Error!!!");
   }

我正在捕获ServiceException并抛出相同的异常。这是很好的练习吗?

EN

回答 3

Stack Overflow用户

发布于 2019-04-26 04:16:57

在catch部分,您实际上捕获了在code..and期间发生的主要异常,然后从that..This抛出自定义/用户可读的异常是很好的做法。

票数 1
EN

Stack Overflow用户

发布于 2019-04-26 04:17:50

不是很好的练习。因为很难找到这个问题的根源

票数 0
EN

Stack Overflow用户

发布于 2019-04-26 07:30:51

你不确定你写的是好是坏。在这种情况下,我会记录一下我计划使用的工具,在本例中是来自的异常机制,然后我会开始问问题。

  1. 有什么理由让我抓住ServiceException e,然后抛出另一个同样类型的,里面的信息更少。你用更少的信息创建了新的。字符串“错误!”肯定低于您可能从原始的e.getMessage()或e.getCause等获得的信息(假设ServiceException e可能正在包装另一个低级异常,请记录一下有关异常包装的内容)。
  2. 一些调用代码会捕获一个ServiceException并对其进行操作吗?检查一下您的呼叫层次结构,并找到您必须在ServiceException上采取行动的地方。停下来,再问一遍,。如果我在这里捕捉到一个“错误!”的ServiceException,会有什么区别吗?在它或原来的ServiceException e。
  3. 我在代码中抛出并捕获异常,是否需要跟踪以后发生的情况?如果是,那么我还会记录一些错误、警告或信息,这取决于场景。这样,对于稍后检查应用程序日志的人来说,您将使故障排除过程更容易。我也会读到一些关于吞咽异常以及为什么这样做是不好的。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55860687

复制
相关文章

相似问题

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