最后阻止异常处理

时间:2015-06-30 01:51:16

标签: java exception exception-handling try-catch-finally finally

为什么在下面的代码中,虽然finally块执行了,但x的值没有更新,

public class Student
{
    public static void main(String...args)
    {
        ABC obj=new ABC();
        System.out.println("x : "+obj.display());
    }
}

class ABC
{
    int x;
    int display()
    {
        try
        {
            x=10;
            System.out.print("Inside Try ");
            return x;
        }
        finally
        {
            x=x+20;
            System.out.print("I execute ");
        }
    }
}

此代码的输出是

内部尝试 我执行 x:10

虽然finally块正在执行,但x的值不会改变。有人可以解释一下原因吗?

0 个答案:

没有答案