【发布时间】:2012-06-22 16:44:33
【问题描述】:
我有一个关于 Java 最佳实践的问题。我正在写一个类,它非常依赖于构造中的对象。事实上,如果在构造时传入的对象为空,那么大部分功能都没有意义。我认为最好在对象构造时将 null 作为参数传递的情况下抛出异常,但我不知道在这种情况下最合适的异常是什么。我应该抛出 NullPointer、IllegalArgument、Instatiation 还是初始化异常?
我已经看到这些都在整个 Java 源代码库中使用,我似乎无法区分为什么在某些情况下使用 NullPointer 而在其他情况下使用 IllegalArgument。我个人会认为,如果在构造时传入了错误的参数,应该会出现一些初始化错误。
【问题讨论】:
-
如果你对对象做任何事情,Java 会抛出 NPE 本身。
-
非常真实的Mong,但我想立即告诉客户。这将在运行时隐藏之前捕获任何错误。
标签: java exception nullpointerexception