代码之家  ›  专栏  ›  技术社区  ›  burnt1ce

如何明确方法可以抛出异常?

  •  6
  • burnt1ce  · 技术社区  · 16 年前

    我正在创建的一个方法抛出了一个异常。最清楚的方法是什么(在代码或注释中)显示我的方法可能抛出异常,因此需要对我的方法应用try{}和catch{}。

    3 回复  |  直到 16 年前
        1
  •  24
  •   Glorfindel Doug L.    6 年前

    <exception/> tag 在方法的文档注释中:

    /// <summary>Does Foo</summary>
    /// <exception cref="System.ArgumentNullException">
    /// Thrown when bar is null.
    /// </exception>
    public void Foo(Bar bar) 
    { 
    
    }
    

    使用 <例外/>

        2
  •  1
  •   DeusAduro    16 年前

    在所有的MSDN文档中,每个方法都显示了它可能抛出的内容。我喜欢这个想法,因此在我的评论中我做了如下的事情:

    愚蠢的程序错误

    如果您想更详细地说明每个错误是在什么情况下抛出的,通常尽管错误名称足以让用户知道。

        3
  •  1
  •   John Fisher    16 年前

    可悲的是,清晰不是唯一的问题。否则,您可以这样做:

    public void Method_MayThrowException() {
      ..
    }
    

    由于其他原因,这是不受欢迎的,一个可以被intellisense接受的评论可能是最好的。

    此外,如果您对附加组件或流程修改持开放态度,则可以阅读有关Spec#。或者你可以执行FxCop规则。