我在接口中定义了一个引发我自己的异常的函数。当我运行Sonar时,它说是多余的投掷。我该如何解决这个小问题?

这是函数的定义:

OwnBean getOwnBean(Integer code1, String code2) throws OwnBeanException;


谢谢你的帮助!

更多信息:

我已经设法获得有关此的更多信息。

该异常是其他异常的后代,而其他异常最后是Exception的后代。

我得到的消息是“无法获取类OwnBeanException的信息”。

最佳答案

我会说,最可能的解释是OwnBeanException扩展了RuntimeException,这将解释为什么它是多余的。 RuntimeExceptions(包括扩展它的所有类)均未经定义,因此通过throws声明它们是没有意义的。

根据documentation的所有可能性:


  在以下情况下,Java中的throws声明中的异常是多余的:
  
  
  它被多次列出
  它是另一个列出的异常的子类
  它是RuntimeException或其子孙之一

10-08 19:49