这是黑马的一道老题,用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?我写的代码是- public class IfDemo {
- public static void main(String[] args){
-
- System.out.println(test(5,0));
- }
- //自定义一个test测试函数
- public static int test(int x,int y){
- try{
- //用来检测try块里面处于return前的语句是否有被执行
- int a = x/y;
- System.out.println("try语句块被执行");
- return 1;
- }catch (Exception e) {
- System.out.println("算数异常");
- return 2;
- }finally{
- //用来检测finally语句块中的语句有没有被执行
- System.out.println("finally语句块被执行");
- return 3;
- }
- }
- }
复制代码 但是感觉这样也无法证明先执行的try语句里面的return还是先执行的finally语句
|
|