标签:static return 继承 定义 代码块 加载 pre index 对象
public static void main(String[] args) { System.out.println(test(null)); System.out.println(test("0")); System.out.println(test("a11")); } public static Integer test(String str) { try { return str.charAt(0) - ‘0‘; } catch (NullPointerException e1) { System.out.println(11); return 1; } catch (StringIndexOutOfBoundsException e2) { return 2; }catch (Exception e3) { return 3; }finally{ System.out.println(4);//这个一定会在return之前执行 // return 4;//这个return会顶替掉前面的其它return } }
执行结果:
11 4 1 ---------- 4 0 ---------- 4 49
解释:finally一般一定会在返回之前执行(也有特殊情况,比如中断程序System.exit(0) ),一般用于释放资源
finalize:
定义在java.lang.Object中,所以每个对象都有,它在gc启动,该对象被回收时调用。
标签:static return 继承 定义 代码块 加载 pre index 对象
原文地址:https://www.cnblogs.com/wzk-0000/p/9876660.html