Java中try-catch-finally中的return
来源:互联网 发布:如何写好故事 知乎 编辑:程序博客网 时间:2024/05/16 17:41
try-catch-finally的执行过程
即使try-catch中有return语句,finally中的代码也会执行。
如果try-catch和finally中有都return语句,则函数的返回值是finally中return的值。
如果try-catch中有return语句,finally中没有return语句,则函数的返回值是try-catch中的return的值。此时,有一个疑问,如果在finally中对try-catch中return的变量进行操作是否会影响try-catch中return的值?
返回的是0,并没有影响,答案在这篇文章中,下面是其中的一段解释
在try语句的return块中,return 返回的引用变量(t 是引用类型)并不是try语句外定义的引用变量t,而是系统重新定义了一个局部引用t’,这个引用指向了引用t对应的值,也就是try ,即使在finally语句中把引用t指向了值finally,因为return的返回引用已经不是t ,所以引用t的对应的值和try语句中的返回值无关了。
finally中使用return语句为什么会出警告
不建议在finally中使用return语句的原因如下:
如果finally中有return语句,则会忽略try-catch中的return语句,这会导致很难判断方法的返回结果,容易得出错误的结论;
如果finally中有return语句,即使前面的try-catch抛出了异常,程序也会忽略try-catch抛出的异常,而是直接返回finally中的返回值。
0 0
- Java中try-catch-finally中的return
- java try catch finally中的return问题
- try...catch...finally中的return
- try...catch...finally中的return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- java基础之try,catch,finally中的return
- 关于java中的try-catch-finally语句和return
- java学习之try catch finally中的return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- return语句在Java的Try Catch Finally中的行为
- Java中的try-catch-finally-return的执行顺序
- 关于java中的try-catch-finally语句和return
- JAVA初窥:try、catch、finally语句块中的return语句
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- Java 线程栈数据收集
- TCP三次握手四次挥手原理
- Nginx初识
- POJ-3267-The Cow Lexicon
- SqlServer常用语句整理(后续更新)
- Java中try-catch-finally中的return
- Android 贝塞尔曲线(二)波浪
- 用了bootstrap中, datetimepicker 显示日期。
- webview本地打开
- linux文件的访问权限全解析,包括SUID,GUID
- HDU 1890Robotic Sort 伸展树
- mysql导入官方示例employees
- 计算机必记词汇/缩写/命令等
- CUDA-CODE5-并行编程(1)