加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java异常包装:糟糕的做法?

发布时间:2020-12-14 05:44:40 所属栏目:Java 来源:网络整理
导读:来自 PHP世界,只有一种方法可以编写异常处理..我发现Java中的异常包装有点“丑陋”: public void exampleOneException(String input) throws MyBusinessException { try { // do something } catch (NumberFormatException e) { throw new MyBusinessExcept
来自 PHP世界,只有一种方法可以编写异常处理..我发现Java中的异常包装有点“丑陋”:
public void exampleOneException(String input) throws MyBusinessException {
    try {
        // do something
    } catch (NumberFormatException e) {
        throw new MyBusinessException("Error...",e);
    }
}

我更喜欢使用这种风格:

public void exampleTwoException() {
    try {
        // do something
    } catch (MyBusinessException e) {
        log.error("Error...: " + e);
    } catch (NumberFormatException e) {
        log.error("Error...: " + e);
    }
}

这些处理例外的方法有什么不同或最佳做法吗?

解决方法

这些都是两种不同场景的有效方法.

在第一种情况下,该方法无法对异常做任何智能,但必须向上“报告”它.这样,调用者可以捕获异常并决定如何处理它(例如取消流,向用户弹出消息,记录它等)

在第二种情况下,您捕获异常并将其记录下来,从而有效地将错误从调用方隐藏起来.如果调用者并不真正关心操作是否成功,则此类处理可能很有用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读