在具有空值时抛出ArgumentNullException()是个好主意吗? This线程没有提到抛出null的最明显的异常。
由于
答案 0 :(得分:6)
public void MyMethod(MyClass cannotBeNull)
{
if (cannotBeNull == null)
{
throw new ArgumentNullException("cannotBeNull");
}
// Do something useful
}
答案 1 :(得分:0)
实际上你正在向后看,另一个场景是:
如果我期望空值并获得定义值
如果您查看MSDN: ArgumentNullException,则专门针对
null引用时引发的异常(在Visual中为Nothing) Basic)传递给一个方法 不接受它作为有效的论据。
我期待一个null,我得到一些东西
VS
我期待什么,我得到了空
那就是说,没有理由你不能或不应该创建自己的
public class IWantANullException:Exception
以任何你想要的方式抛出它。