本帖最后由 武庆东 于 2012-9-8 09:24 编辑
看到两个类输出结果,和预想的不一样!大家看一下哈
public class A
{
public static void main(String args[])
{
A t = new A();
int b = t.get();
System.out.println(b);
}
public int get()
{
try
{
return 1 ;
}
finally
{
return 2 ;
}
}
}
-------------------------输出结果----------------------
2 //这个类输出结果不是1?
----------------------------------------------------------
public class Test {
/**
* @param args add by zxx ,Dec 9, 2008
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(new Test().test());;
}
static int test()
{
int x = 1;
try
{
return x;
}
finally
{
++x;
}
}
}
---------------输出结果------------------------------
1 //为什么不是2?
return 语句和finally执行的先后顺序,比较上下两个类的输出结果的给出解释?
|
|