12
返回列表 发新帖
楼主: ibmzz83

return和finally冲突问题,请指教

[复制链接]
论坛徽章:
387
马上加薪
日期:2014-07-30 15:56:19itpub13周年纪念徽章
日期:2014-09-30 11:08:572015年新春福章
日期:2015-03-04 14:19:112015年新春福章
日期:2015-03-06 11:57:31
11#
发表于 2008-1-29 12:03 | 只看该作者
原帖由 iooyoo 于 2008-1-28 09:32 发表
try-finally中finally语句是一定会被执行

//这里明明已经return了,退出了子程序,那么后面的finally有什么用呢
从你代码上的顺序是这样,但是finally这个是语言本身的约定,你这样写,编译器和jvm会自动调整这个顺序



finally的最佳用途是签订劳动合同时:

  1. try {
  2. /*试用期*/
  3.      int salaryAmount=0;
  4.      if (passTryTime.returnTryTimeResult()){
  5.               setSalaryAmount();
  6.               toBePaidSalary=getSalaryAmount();
  7. .......
  8.      }
  9.       return salaryAmount;

  10. }
  11. catch(CompanyException ce){
  12.       if( ce.close()){
  13. .......
  14.      }
  15. }
复制代码


试用期通过,薪水恢复。
如果期间公司倒闭exception出现。
自认倒霉吧。

所以我们要加上 finally语句

  1. finally{
  2.          paidForTryTimeSalary();
  3. }
复制代码

以确保至少试用期工资拿得到!

使用道具 举报

回复
论坛徽章:
1
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:53
12#
发表于 2008-3-26 13:37 | 只看该作者

回复 #6 马甲走江湖 的帖子

能否问下你用什么做的反编译?

使用道具 举报

回复
论坛徽章:
0
13#
发表于 2008-3-27 14:38 | 只看该作者
不放心就把RETURN放FINALLY 里? 哈哈~~~

使用道具 举报

回复
求职 : 技术/实施/服务顾问
论坛徽章:
182
最佳人气徽章
日期:2012-03-13 17:39:18粉钻
日期:2012-07-03 19:48:12欧洲冠军杯纪念徽章
日期:2012-05-13 13:33:34菠菜明灯
日期:2012-05-13 13:33:35股神
日期:2012-05-13 13:33:35NBA之星
日期:2012-05-13 13:33:35NBA大富翁
日期:2012-05-13 13:33:35菠菜神灯
日期:2012-05-13 13:33:35ITPUB季度 社区新星
日期:2012-02-16 14:52:31奥运纪念徽章
日期:2008-09-04 11:35:05
14#
发表于 2008-3-28 13:02 | 只看该作者
学习了

使用道具 举报

回复
论坛徽章:
2
开发板块每日发贴之星
日期:2007-04-13 01:05:37开发板块每日发贴之星
日期:2007-04-14 01:05:02
15#
发表于 2008-3-28 16:24 | 只看该作者
Self-improved

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表