A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如果try.........catch....里面有return语句,请问finally的代码还会执行吗?
如果会,请问是在return前还是return后?   具体如下代码,请问返回的X是多少?
public class ExceptionTest2 {
        public static void main(String[] args) {
                int result = method2(10);
               
                System.out.println(result);
                //System.out.println("结束了");
               
        }
        private static int method2(int x) {
                try{
                        System.out.println(x/0);
                } catch (ArithmeticException e) {
                        System.out.println("异常产生了");
                        return x;
                } finally {
                        System.out.println("解决异常了");
                        x++;
                }
               
                return 0;
        }

1 个回复

正序浏览
如果在catch里面有return,finally语句会在return之前执行 所以 如果x=2,返回就是3了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马