关于Java finally的面试题
有如下代码:
try {
代码1
return 1;
}finally{
代码2
return 2;
}
问,代码2是否会被执行?若会被执行,是try里的return语句先执行还是finally里的代码先执行?最后该代码片段的返回值是1还是2?
答:代码2会被执行,因为finally里的代码总会被执行。
finally里的代码会在return 1;之后被执行。
既然finally里的代码会在return 1;之后被执行,所以return 2;覆盖return 1;返回2。
try {
代码1
return 1;
}finally{
代码2
return 2;
}
问,代码2是否会被执行?若会被执行,是try里的return语句先执行还是finally里的代码先执行?最后该代码片段的返回值是1还是2?
答:代码2会被执行,因为finally里的代码总会被执行。
finally里的代码会在return 1;之后被执行。
既然finally里的代码会在return 1;之后被执行,所以return 2;覆盖return 1;返回2。
【关于Java finally的面试题】相关文章
5. 如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
8. final, finally, finalize的区别
10. JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
本文来源:https://www.mianshiwenti.com/a12445.html
进入下载页面
﹝关于Java finally的面试题﹞相关内容
- ShellScript面试题一则-ShellScript编程
- Collection和Collections的区别
- int *p=NULL和*p= NULL有什么区别
- shell程序如何生命变量?shell变量是弱变量吗?
- 一些关于MySql加速和优化的面试题
- 软件测试LoadRunner面试题: Analysis Scenario (Bottlenecks)
- 什么是smarty? Smarty的优点是什么?
- C++:memset ,memcpy和strcpy的根本区别
- Order by的几种用法
- 介绍一下Ruby的特点