一个经常不回碰到的问题,catch、finally、return
2009-06-26 09:00
351 查看
一篇帖子中问到的问题,catch中return了一个变量,在finally里面改了这个变量的值,结果return的值是修改之前的,做了个小测试,证明了不管是在哪里,以return为主,如果finally里面又执行了return,那么返回的是finally里面的值。
import java.lang.*;
public class A
{
public static void main(String[] args)
{
A a = new A();
System.err.println(a.gets2());
}
public String gets3(){
String i= "a";
String b="e";
try{
throw new Exception();
}catch(Exception e){
//return 1;
i="b";
return i;
}finally{
//return 2;
i=b;
}
//return i;
}
public String gets(){
String i= "2";
try{
throw new Exception();
}catch(Exception e){
i="3";
return i;
}finally{
i="4";
//return 2;
}
}
}
import java.lang.*;
public class A
{
public static void main(String[] args)
{
A a = new A();
System.err.println(a.gets2());
}
public String gets3(){
String i= "a";
String b="e";
try{
throw new Exception();
}catch(Exception e){
//return 1;
i="b";
return i;
}finally{
//return 2;
i=b;
}
//return i;
}
public String gets(){
String i= "2";
try{
throw new Exception();
}catch(Exception e){
i="3";
return i;
}finally{
i="4";
//return 2;
}
}
}
相关文章推荐
- Java面试里关于try,catch,finally,return容易犯错的一个问题
- Java实例说明 return在try/catch/finally中的一个注意点
- Android面试之java基础try-catch-finally-return的执行先后顺序问题
- Java try/catch/finally代码块中加入return后的执行顺序问题
- 关于JAVA的try catch finally的return返回值问题
- 关于JAVA的try catch finally的return返回值问题
- 黑马程序员 try或catch中存在return 语句时,它们与finally 的执行顺序问题
- try-catch-finally-return问题详解
- 面试经常问的一个问题:final、finalize、finally
- try catch finally 与 return 的问题
- 对递归+栈溢出异常+try-catch-finally的一个问题的分析
- 在try,catch,finally中return,throw覆盖的问题总结
- 关于JAVA的try catch finally的return返回值问题
- 面试经常问的一个问题:final、finalize、finally
- 关于Java中try catch finally throw return的执行顺序问题
- Java中的try+catch+finally+return的返回值问题
- 腾讯云图片鉴黄集成到C# SQL Server 怎么在分页获取数据的同时获取到总记录数 sqlserver 操作数据表语句模板 .NET MVC后台发送post请求 百度api查询多个地址的经纬度的问题 try{}里有一个 return 语句,那么紧跟在这个 try 后的 finally {}里的 code 会 不会被执行,什么时候被执行,在 return 前还是后? js获取某个日期
- try catch finally中return语句与非return语句的执行顺序问题
- 一个问题:关于finally中return吞掉catch块中抛出的异常
- try-catch-finally-return返回值问题