选择要引发的正确异常类型

更新:2007 年 11 月

下列设计准则可帮助您确保正确地使用现有异常,并在适当的时候创建对您的库有价值的新异常。

考虑引发 System 命名空间中的现有异常,而不是创建自定义异常类型。

有关 .NET Framework 所提供的最常用异常类型的详细准则,请参见捕捉和引发标准异常类型

如果错误状态可以通过不同于现有任何其他异常的方法以编程方式进行处理,则要创建并引发自定义异常。否则,引发一个现有异常。

有关创建自定义异常的详细准则,请参见设计自定义异常

引发适当的最具体(派生程度最大)的异常。例如,如果某方法收到一个 null(在 Visual Basic 中为 Nothing)参数,则该方法应引发 System.ArgumentNullException,而不是引发该异常的基类型 System.ArgumentException。

部分版权所有 2005 Microsoft Corporation。保留所有权利。

部分版权所有 Addison-Wesley Corporation。保留所有权利。

有关设计指南的更多信息,请参见 Krzysztof Cwalina 和 Brad Abrams 编著、Addison-Wesley 于 2005 年出版的“Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries”(《框架设计指南:可重用 .NET 库的约定、术语和模式》)。

请参见

概念

异常引发

其他资源

类库开发的设计准则

异常设计准则