java 提示 Finally 块未正常完成 的原因

会出现提示 Finally 块未正常完成的原因:finally内不建议使用return,因为函数的执行过程是,在try中调用了 return后,才会执行finally中的代码,所以finally中只能放一些资源释放类的代码段,不能带return

public class Class1Practice {
    public static void main(String[] args) {
        System.out.println(method());
    }
    public static int method(){
        try{
            return 1;
        }catch(Exception e){
            return 2;
        }
        finally{
            return 3;
        }
    }
}

怎么解决?

 加上@SuppressWarnings("finally")

另外附上程序运行结果(返回值是3,因为无论是否产生异常,finally语句块都将被执行)

猜你喜欢

转载自blog.csdn.net/aipanyu/article/details/81750370