1.throw
是语句抛出异常。
2.throws
是方法可能会抛出的异常声明。
区别:
1.throws出现在方法函数头,而throw出现在函数体
2.throws表示出现异常的一种可能性,并不会发生这些异常,throw则是抛出了异常执行throw则一定会抛出某种异常。
3.两者都是消极处理异常的方式,只是抛出或可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。
代码案例:
<span style="font-size:18px;"> void doA(int a)throws Exception{ //抛出可能会发生的不确定的异常
try{
}catch (Exception ex){
throw ex; //确定异常
}
if (a!=b)throw new Exception("自定义异常!");//确定的异常
}</span>