我很好奇throws
和throw
中的哪一个具有更高的优先级,当涉及到相同类型的异常时(尽管在现实生活中的例子中似乎不太可能发生这种情况)。以下是我遇到的例子:
public void sample() throws ArithmeticException{
//Statements
.....
//if (Condition : There is an error)
ArithmeticException exp = new ArithmeticException();
throw exp;
...
}
答案 0 :(得分:2)
关键字throws
表示方法可以抛出异常。声明异常的方法不必须抛出它们。只是他们可以被抛出。因此,编译器强制调用者捕获这些异常。
所以throw
实际上是在抛出异常。它也可以在没有throws
声明的情况下使用。