javatrycatch异常后还会继续执⾏吗
catch 中如果你没有再抛出异常 , 那么catch之后的代码是可以继续执⾏的 , 但是try中 , 报错的那⼀⾏代码之后⼀直到try结束为⽌的这⼀段代码 , 是不会再执⾏的。
======================
//代码1
public static void test() throws Exception {
throw new Exception("参数越界");
System.out.println("异常后"); //编译错误,「⽆法访问的语句」
}
//代码2
try{
throw new Exception("参数越界");
}catch(Exception e) {
e.printStackTrace();
}
System.out.println("异常后");//可以执⾏
//代码3
if(true) {
throw new Exception("参数越界");
}
System.out.println("异常后"); //抛出异常,不会执⾏
总结:
1. 若⼀段代码前有异常抛出,并且这个异常没有被捕获,这段代码将产⽣编译时错误「⽆法访问的语句」。如代码1;
2. 若⼀段代码前有异常抛出,并且这个异常被try…catch所捕获,若此时catch语句中没有抛出新的异常,则这段代码能够被执⾏,否
则,同第1条。如代码2;
try catch的使用方法3. 若在⼀个条件语句中抛出异常,则程序能被编译,但后⾯的语句不会被执⾏。如代码3
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论