我对一个属性有一个简单的setter方法,null不适合这个特定属性.在这种情况下,我总是心烦意乱:我应该投IllegalArgumentException还是NullPointerException?从javadocs来看,这两种方法似乎都是合适的.是否有某种可以理解的标准?或者这只是你想做什么就做什么的事情之一,而且两者都是正确的?

推荐答案

如果您不希望null是允许值,则似乎需要IllegalArgumentException,而如果您试图对一个原来是null的变量求值,则会抛出NullPointerException.

Java相关问答推荐

我们如何直接使用kerminldap服务票证来通过ldap进行身份验证并形成LDAP上下文

具有默认分支的JUnit代码覆盖率切换声明

如何使用jooq generator将表名和列名映射为人类可读的?

有关手动创建的包的问题

JVM会优化这个数学运算吗?

通过合并Akka Streams中的多个慢源保持订购

如何找到MongoDB文档并进行本地化?

如何创建一个2d自上而下的移动系统,其中移动,同时持有两个关键是可能的处理?

Java编译器抛出可能未正确初始化的错误?

通过移动一个类解决了潜在的StubbingProblem.它怎麽工作?

如何将其他属性引用到log4j2 yaml配置中?

如何将Pane的图像快照保存为BMP?

如何在JavaFX中制作鼠标透明stage

如何在太阳系模拟器中添加月球?

如何通过Java java.lang.Foreign API访问本机字节数组

如何使用Java对随机生成的字母数字优惠券代码进行过期设置

没有Google Play服务,Firebase Auth无法工作

放置在变量中的Java成员引用不相等

Spring Integration SFTP 连接失败 - 无法协商 kex 算法的密钥交换

如何调查进程列表中不可见的活跃 MySQL 事务?