java – 拦截异常

我想使用自定义异常,以便在发生任何排序异常时出现用户友好的消息.

这样做的直接方式是什么?我是否应该采取额外的预防措施来避免干扰Swing的EDT?

例外翻译:

最好不要使用对最终用户没有意义的消息来污染您的应用程序,而是创建有意义的异常和消息,这些异常和消息将转换在应用程序实现深处发生的异常/错误.

根据@ Romain的评论,您可以使用Exception(Throwable cause)构造函数来跟踪较低级别的异常.

从Effective Java第2版,第61项:

[…] higher layers should catch
lower-level exceptions and, in their
place, throw exceptions that can be
explained in terms of the higher-level
abstraction. This idiom is known as
exception translation:

// Exception Translation
    try {
         // Use lower-level abstraction to do our bidding
         ...
    } catch(LowerLevelException e) {
         throw new HigherLevelException(...);
    }
本站公众号
   欢迎关注本站公众号,获取更多程序园信息
开发小院