我有一个简单的属性的setter方法,null不适合这个特定的属性.我总是在这种情况下被撕裂:我应该扔一个IllegalArgumentException,还是一个NullPointerException?从javadocs看,两者似乎都合适.有某种理解标准吗?或者这只是你应该做的任何事情之一,而且两者都是正确的?
java null exception nullpointerexception illegalargumentexception
我的一位同事表示,布尔作为方法论据是不可接受的.它们应由枚举代替.起初我没有看到任何好处,但他给了我一个例子.
什么更容易理解?
file.writeData( data, true );
Run Code Online (Sandbox Code Playgroud)
要么
enum WriteMode {
Append,
Overwrite
};
file.writeData( data, Append );
Run Code Online (Sandbox Code Playgroud)
现在我明白了!;-)
这绝对是一个例子,枚举作为第二个参数使代码更具可读性.
那么,您对此主题有何看法?