关于return,try,catch,finally的执行顺序

一直不太明白try,catch,finally块的执行顺序,以及当try块中包含return时的执行顺序,今天做了个试验,结果记下来.

其实站在try,catch,finally块外面,可以将整个try,catch.finally块看成一条语句,这样就很容易分析出在try,catch,finally块之前或之后的return是怎么执行的了.

在try,catch,finally内部,try块发生异常时,会跳转到catch,然后再跳转到finally.简单的说,只要是当try或者catch块里有语句试图离开当前try,catch,finally块(例如throw,return等)时,这时候会先将finally块执行之后再离开这个try,catch,finally块.

原文地址:https://www.cnblogs.com/xiaobaihome/p/2276728.html