唐僧喜欢小龙女

导航

finally 的整理学习

/**
 *
 * 1、finally 中声明的 代码正常是一定会被执行的。即使catch 中出现了异常、try中有return的语句
 * catch 中有return语句的情况
 * 2、什么时候需要在finally 中写代码呢
 *    2.1 常见的物理连接如数据库、流、socket
 * 3、finally 一定会被执行吗?
 *    3.1 如果 try 没有执行
 *    3.2 try中系统退出
 * 4、什么时候需要try catch
 *    4.1针对编译时的异常才需要try catch,运行时异常不用try catch 例如空指针异常,catch住也没啥意思,如果是空
 *      指针异常需要改代码了。
 *    4.2由于运行时异常比较的常见,针对运行时异常都不用try catch 这个很重要
 */


@RestController
public class ExceptionTestController {

    @RequestMapping("/testException")
    public int testException(){
        String str = "s123";
        try {
            int num = Integer.parseInt(str);
            System.out.println("没有出现异常十三水 ");
            return 1;
        }catch (Exception e){
            e.printStackTrace();
            System.out.println("出现了异常");
            return 2;

        }finally {
            System.out.println("执行了");
            //这里也有return 最后的返回结果是啥呢 答案是 3
            /**
             *  try 或者 catch 里面执行完了 要return 时先执行 finally,结果finally里面有 return
             *  结果就返回了 finally 里面的值
             *
             */
            return 3;
        }
    }

}

  

posted on 2021-08-15 21:36  与时具进&不忘初心  阅读(23)  评论(0编辑  收藏  举报