我使用商业 API 并且有一个来自 API 代码的 NullpointException
。
支持人员告诉我这是预期的,因为我调用的方法的输入参数之一是 null
并且需要此参数才能使用该方法。
这真的是我的错,因为我在将参数传递给 API 之前没有检查它们吗?
让 NullpointerExceptions
从您的 API 中退出不是不好的做法吗?如果不是,如果我想确保我的软件不会崩溃,我将不得不检查所有类型的 RuntimeExceptions
如果我使用该 API 的方法。
如果这是不好的做法,是否有相关文件或规范?
最佳答案
是的,我会说他们应该抛出 IllegalArgumentException
参见:IllegalArgumentException or NullPointerException for a null parameter?
请继续阅读,因为这是最佳答案:https://stackoverflow.com/a/47710/2586804
主要区别在于 IllegalArgumentException
明确表示您在使用该库时犯了错误。
无论哪种方式,您只需要正确使用该库即可。并且只捕获可以处理的异常。
关于java - API 是否应该抛出 NullPointerExceptions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18868705/