我正在阅读从构造函数中抛出异常的主题。在通过 stackflow 研究了一些相同的主题之后。我得出的结论是,我们可以从构造函数中抛出异常。当我们尝试对构造函数抛出异常的父级进行子类化时,就会出现问题。例如,请参见下面的代码片段。
class ParentConstructorException{
public ParentConstructorException() throws IOException {
}
}
public class TestConstructorException extends ParentConstructorException {
public TestConstructorException() throws Exception{
}
//Causes compile time error if i don't throw exception
public TestConstructorException(int x){
}
}
我在子类中提供了一个无参数构造函数,它会引发更广泛的异常。当我重载构造函数时,它说我没有处理检查的异常。所以这意味着我们不能在不抛出相同或更广泛的检查异常的情况下启动子类?有人可以解释一下吗。本