参考资料:
try-catch:当时捕获,当时处理;
throw:用于手动抛出一个异常(try中的异常是Java自动抛出的)。如果throw位于try语句中,则在try对应的catch中捕获并处理。否则就需要抛给调用者进行try-catch。此时,throw所在的方法必须是:[修饰符1,修饰符2,···] 返回值 方法名(形参列表) throws Exception {}表明当前方法可能抛出异常。表示的是此方法之中不进行异常的处理,而交给被调用处处理。
throws:主要是在方法定义上使用的,表示的是此方法之中不进行异常的处理,而交给被调用处处理。
重点:throw不能单独使用,只能配合throws或try{}catch{}使用。
class TestDemo {
public static void main (String args[]) throws Exception{
try { // 直接抛出了一个自定义的异常类对象
throw new Exception("自己定义的异常!");
} catch (Exception e) {
e.printStackTrace();
System.out.println(e.getMessage());
throw new Exception("自己定义的异常!");//直接抛出,没有try-catch则必须在方法上加上:throws Exception
}
}
}