1.代码实例

finally字句的用法finally字句的用法

2.运行情况

1.代码没有抛出异常

执行顺序1-2-5-6

2.抛出一个在catch语句中捕获的异常

1.如果catch语句没有抛出异常

执行顺序1-3-4-5-6

2.如果catch语句抛出异常

执行顺序1-3-5

3.代码抛出异常但是没有被补货

执行顺序1-5





3.try finally字句

1.代码实例

finally字句的用法
无论try语句当中是否会发生异常,finally都会被执行。

在我们认为需要关闭资源的时候,使用这个子句是一种比较好的选择。

强烈建议解耦和try/catch和try/finally语句块。这样可以提高代码的清晰度。

finally字句的用法
内层的try语句确保关闭输入流。外层的负责报告错误。这种方式还会报告finally子句中出现的错误。
finally字句的用法

上面代码如果调用f(2)结果将会返回0,因为finally语句里的return会覆盖。


相关文章: