java try catch 异常后还会继续执行吗

Posted Firm陈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java try catch 异常后还会继续执行吗相关的知识,希望对你有一定的参考价值。

java try catch 异常后还会继续执行吗
catch 中如果你没有再抛出异常 , 那么catch之后的代码是可以继续执行的
1、但是try中 , 报错的那一行代码之后 一直到try结束为止的这一段代码 , 是不会再执行的。

//代码1
public static void test() throws Exception  
   try 
            throw new Exception("参数越界");
             System.out.println("异常后");//不可以执行
         catch (Exception e) 
            e.printStackTrace();
        

2、若一段代码有异常抛出,并且这个异常没有被捕获,这段代码将产生编译时错误「无法访问的语句」。如代码2

//代码2
public static void test() throws Exception  

    throw new Exception("参数越界"); 
    System.out.println("异常后"); //编译错误,「无法访问的语句」

3、若一段代码有异常抛出,并且这个异常被try…catch所捕获,若此时catch语句中没有抛出新的异常,则这段代码能够被执行,否则,同第2条。如代码3

//代码3
		try 
            throw new Exception("参数越界");
         catch (Exception e) 
            e.printStackTrace();
        
        System.out.println("异常后");//可以执行

4、若在一个条件语句中抛出异常,则程序能被编译,但后面的语句不会被执行。如代码4

//代码4
	if(true) 
   			throw new Exception("参数越界"); 
	
	System.out.println("异常后"); //抛出异常,不会执行

异常要么在当前方法中被catch,要么抛给当前方法的上层方法进行处理。

以上是关于java try catch 异常后还会继续执行吗的主要内容,如果未能解决你的问题,请参考以下文章

java try catch 异常后还会继续执行吗

java中异常抛出后代码还会继续执行吗

java中异常抛出后代码还会继续执行吗

java怎么处理异常让程序继续执行

try-catch-finally 中哪个部分可以省略?try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?

try catch执行过程分析