【Java】java处理异常之后程序会如何执行
java处理异常之后程序会如何执行
chen发布于 今天 09:12
java处理异常之后程序会如何执行
问题产生:当产生异常后,并在异常处理器中进行执行之后,程序会是如何的一种状态,是终止还是继续执行处理之后的代码呢?
先上代码:
由以上的代码我们可以知道在抛出异常之后的代码都会被编译器视作无用的代码,进一步会显示的报错。因此更谈不上之后的代码可以执行了。
进一步修改之后,我们采用以下的代码进行测试
可以得出以下的结果:
从结果中我们可以看出,当主程序(main)捕获到异常之后,会进一步进行处理,随之处理完之后会进一步执行之后的代码。
接下来我们看另一种情况:
我们将对第一种的异常放在其他的类方法种进行捕获,我们从上图可以看出throw new Exception("第二种异常哈")之后的代码仍然视为无用。接着我们在主程序(在另一个类中)进行调用当前的方法并对其进行捕获。
运行程序得出以下的结果:
我们可以看出在第一种异常捕获之后并抛出第二种异常时,并不会去执行其后的代码,finally里面的代码除外。
由此,就最开始的问题以及之后的分析,我们可以得出以下的结论:
- 在同一个作用域下,throw抛出异常之后的代码都视为无用,这个会被编译器显示的报错。
- 当前作用域下的无抛出异常,当捕获了异常并处理之后,其后的代码会继续执行下去
以上都针对于检查型异常而言的。
java后端
阅读 37发布于 今天 09:12
本作品系原创,采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
chen
1 声望
0 粉丝
chen
1 声望
0 粉丝
宣传栏
目录
java处理异常之后程序会如何执行
问题产生:当产生异常后,并在异常处理器中进行执行之后,程序会是如何的一种状态,是终止还是继续执行处理之后的代码呢?
先上代码:
由以上的代码我们可以知道在抛出异常之后的代码都会被编译器视作无用的代码,进一步会显示的报错。因此更谈不上之后的代码可以执行了。
进一步修改之后,我们采用以下的代码进行测试
可以得出以下的结果:
从结果中我们可以看出,当主程序(main)捕获到异常之后,会进一步进行处理,随之处理完之后会进一步执行之后的代码。
接下来我们看另一种情况:
我们将对第一种的异常放在其他的类方法种进行捕获,我们从上图可以看出throw new Exception("第二种异常哈")之后的代码仍然视为无用。接着我们在主程序(在另一个类中)进行调用当前的方法并对其进行捕获。
运行程序得出以下的结果:
我们可以看出在第一种异常捕获之后并抛出第二种异常时,并不会去执行其后的代码,finally里面的代码除外。
由此,就最开始的问题以及之后的分析,我们可以得出以下的结论:
- 在同一个作用域下,throw抛出异常之后的代码都视为无用,这个会被编译器显示的报错。
- 当前作用域下的无抛出异常,当捕获了异常并处理之后,其后的代码会继续执行下去
以上都针对于检查型异常而言的。
以上是 【Java】java处理异常之后程序会如何执行 的全部内容, 来源链接: utcz.com/a/112065.html
得票时间