抛出ArgumentNullException

时间:2011-04-23 01:18:25

标签: c#

在具有空值时抛出ArgumentNullException()是个好主意吗? This线程没有提到抛出null的最明显的异常。

由于

2 个答案:

答案 0 :(得分:6)

仅当发现方法的参数为null时才应使用

ArgumentNullException

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 

以任何你想要的方式抛出它。

相关问题