//代码1
public static void test() throws Exception {
throw new Exception("参数越界"); //抛出了一个编译时异常,必须要做处理,要么throws向上抛出,要么做try...cacth.
System.out.println("异常后"); //不执行
}
若一段代码前有异常抛出,并且这个异常没有被捕获,后面的代码将不执行。
//代码2
try{
throw new Exception("参数越界");
}catch(Exception e) {
e.printStackTrace();
}
System.out.println("异常后");//可以执行
若一段代码前有异常抛出,并且这个异常被try…catch所捕获,若此时catch语句中没有抛出新的异常,则这段代码能够被执行,否则,同代码1,结论。
小结:产生异常时,未捕获异常后续代码不执行。
(常见运行/编译异常)