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

jlz890220

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© jlz890220 初级黑马   /  2015-9-6 11:59  /  303 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

刚看到异常的部分有这么个问题:
public class ExceptionDemo {
        public static void main(String[] args) {
                Div d = new Div();
                        int shang = d.div(4, 1);
        }
}

class Div {
        public int div(int x,int y) throws ArithmeticException{
                return x/y;
        }
}
这段是可以编译通过的,但是ArithmeticException换成Exception就必须要处理异常了,如下
public class ExceptionDemo {
        public static void main(String[] args) {
                Div d = new Div();
                        int shang = d.div(4, 1);
        }
}

class Div {
        public int div(int x,int y) throws Exception{
                return x/y;
        }
}
这段是不能编译通过的。同样都是异常只不过是父类和子类的关系怎么结果就不一样那,另外,第一段中方法所抛出的异常根本就等于白写了吗

1 个回复

倒序浏览
Exception下有一个子类是RuntimeException,这类异常是不用申明和处理的,如果发生了异常,jvm就停止程序的运行,让你去修改代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马