【发布时间】:2010-11-03 14:33:38
【问题描述】:
在 Java 中,您可以使用“throws”关键字明确定义抛出哪些异常。这样,任何调用您的方法的人都知道要捕获什么。
C# 中有什么东西吗?如果没有,我如何知道要捕获哪些异常,或者如何让其他人知道要捕获哪些异常?
另外,如果我定义一个接口,有没有办法说“methodX() 应该在错误时抛出这个异常”?
【问题讨论】:
-
我想 .NET 框架的版本在这里会有所作为,但在我使用的版本中,答案是:你很好地记录了潜在的异常,并且没有 - 没有办法强制异常的类型抛出(没有捕获所有异常,并将它们重新包装成您喜欢的类型)。这不仅仅是您可能在方法中生成的异常,还有任何您正在冒泡的异常。