技术专栏

子类继承父类方法

2019-01-30  本文已影响0人  MacDonald

父类方法抛出异常,子类继承父类,重写父类方法时,抛出的异常“子类抛出的异常类型不能比父类抛出的异常类型更宽泛”。

class Father {
    public void method() throws RuntimeException {

    }
}

class Child extends Father {
    @Override
    public void method() throws IllegalArgumentException, IllegalStateException {
        super.method();
    }
}

这里IllegalArgumentException, IllegalStateException都是RuntimeException的子类, 则可以抛出多个。

如果子类继承方法抛出的异常其中之一不是RuntimeException及其子类,则编译不通过。

上一篇下一篇

猜你喜欢

热点阅读