假设我有一个将某种对象作为参数的方法。现在说如果这个方法传递了一个空参数,这是一个致命错误,应该抛出一个异常。我是否值得编写这样的代码(记住这是一个简单的例子):
void someMethod(SomeClass x)
{
if (x == null){
throw new ArgumentNullException("someMethod received a null argument!");
}
x.doSomething();
}
或者当它调用 x.doSomething() 时仅仅依靠它抛出 NullException 对我来说是安全的吗?
其次,假设 someMethod 是一个构造函数,并且 x 在调用另一个方法之前不会被使用。我应该立即抛出异常还是等到需要 x 后再抛出异常?