博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在try{}里面有一个return语句,那么紧跟在后面的finally{}里面的code还会执行吗?...
阅读量:4991 次
发布时间:2019-06-12

本文共 1267 字,大约阅读时间需要 4 分钟。

只要try{}里面没有System.exit(),finally{}里面的code就会执行;

package com.test;public class TryAndFinally {    public String ff(){        System.out.println("ff()");        return "111";    }    public String hh(){        try{            return ff();        }catch(Exception e){            System.out.println("e");        }finally{            System.out.println("finally");            return "finally";        }    }    public static void main(String[] args){        TryAndFinally taf=new TryAndFinally();        taf.hh();    }}

执行的结果是:ff()       finally

他们的执行程序是:先执行ff()方法,然后当遇到try{}里面的return时,程序就自动执行finally{}然后在return。

所以说finally{}既可以说是在return之前执行也可以说是在执行return的中间执行。

如果

package com.test;public class TryAndFinally {    public String ff(){        System.out.println("ff()");        return "111";    }    public String hh(){        try{            //return ff();            System.exit(1);        }catch(Exception e){            System.out.println("e");        }finally{            System.out.println("finally");            return "finally";        }    }    public static void main(String[] args){        TryAndFinally taf=new TryAndFinally();        taf.hh();    }}

执行的结果是空,因为执行System.exit()就推出了虚拟机,finally{}不再执行。

 

 

 

 

 

转载于:https://www.cnblogs.com/xinxinjava/archive/2013/05/05/3061211.html

你可能感兴趣的文章
从单链表到循环链表
查看>>
百度招聘无处不在!
查看>>
丢失控制文件恢复实验记录--3(当前的控制文件损坏,归档日志文件损坏且备份的控制文件是旧的情况恢复数据库)...
查看>>
Ganglia监控MySQL
查看>>
反射和动态导入模块
查看>>
信息社会
查看>>
Mysql存储引擎概念特点介绍及不同业务场景选用依据
查看>>
关于Java类Calendar做统计时 获取日期的一些常见操作
查看>>
从程序员转向淘宝店主的探索
查看>>
openstack 中国联盟公开课參会总结
查看>>
约瑟夫环问题详解 (c++)
查看>>
Ubuntu 配置VNC以及使用VNC连接时,无法显示系统菜单栏,解决方法
查看>>
BZOJ.3990.[SDOI2015]排序(DFS)
查看>>
hdu 1358
查看>>
“-fembed-bitcode is not supported on versions of iOS prior to 6.0” 错误
查看>>
[转]jquery mobile中redirect重定向问题
查看>>
[django]表格的添加与删除实例(可以借鉴参考)
查看>>
Mockito一个采用Java编写用于单元测试的Mocking框架
查看>>
把elipse非maven的Struts2+Spring+Ibatis项目导入Idea中
查看>>
SVGImageView
查看>>