应该API抛出NullPointerExceptions

Fel*_*idt 4 java api exception-handling

我使用商业API并且NullpointException来自API代码.

支持告诉我它是预期的,因为我调用的方法的输入参数之一null是使用methdod需要此参数.

这真的是我的错,因为在将参数传递给API之前我没有检查过参数吗?

放弃NullpointerExceptions你的API 不是不好的做法吗?如果不是我必须检查所有类型,RuntimeExceptions如果我使用该API的方法,如果我想确保我的软件不会崩溃.

如果是不好的做法,是否有任何文件或规格参考这个?

use*_*804 5

是的,我会说他们应该扔掉 IllegalArgumentException

请参阅:null参数的IllegalArgumentException或NullPointerException?

并继续阅读,因为这是最好的答案:https://stackoverflow.com/a/47710/2586804

主要区别在于IllegalArgumentException明确表示在使用库时出错了.

无论哪种方式,您只需要正确使用库.如果你能处理它们,只能捕获异常.