我在接口中定义了一个引发我自己的异常的函数。当我运行Sonar时,它说是多余的投掷。我该如何解决这个小问题?
这是函数的定义:
OwnBean getOwnBean(Integer code1, String code2) throws OwnBeanException;
谢谢你的帮助!
更多信息:
我已经设法获得有关此的更多信息。
该异常是其他异常的后代,而其他异常最后是
Exception
的后代。我得到的消息是“无法获取类OwnBeanException的信息”。
最佳答案
我会说,最可能的解释是OwnBeanException扩展了RuntimeException,这将解释为什么它是多余的。 RuntimeExceptions(包括扩展它的所有类)均未经定义,因此通过throws声明它们是没有意义的。
根据documentation的所有可能性:
在以下情况下,Java中的throws声明中的异常是多余的:
它被多次列出
它是另一个列出的异常的子类
它是RuntimeException或其子孙之一