以下面的基于数组的字符堆栈的实现为例:
public char peek() throws Underflow {
if (!isEmpty()) {
return stack[pos];
} else {
throw new Underflow("Peeking at an empty stack.");
}
}
Run Code Online (Sandbox Code Playgroud)
回到我只使用文本编辑器时,我总是使用@exception标签,但现在我的IDE(Netbeans)在生成javadoc时使用了@throws.
所以我的问题是,两者之间的差异是什么时候应该优先于另一个(例如使用上面的代码)?
T.J*_*der 49
没有,他们是同义词.来自文档:
使用
@throws标记记录例外
注 - 标签@throws和@exception是同义词.
Har*_*hra 11
@throws 是因为它是关键字(方法声明中的"throws"子句),
而且,作为一个动词,阅读起来更自然.这读作一句话:
@throws NullPointerException
Run Code Online (Sandbox Code Playgroud)
虽然这似乎更多余:
@exception NullPointerException
Run Code Online (Sandbox Code Playgroud)
否则,两者都是同义词
小智 5
@exception如果您抛出一个代码,则不是100%正确Throwable.@throws更准确.(我意识到没有一个好的用例永远使用throw new Throwable(),但理论上它是允许的.)
| 归档时间: |
|
| 查看次数: |
16411 次 |
| 最近记录: |