12.7.3 覆写对异常声明的要求

最后一个要求是子类型的方法声明中不能抛出父类型中对应方法没有声明的受检异常。对于子类型中的方法所声明的每个受检异常,父类型中的方法都需要声明抛出该受检异常或其父类型异常。当使用者通过try-catch语句来捕获父类型方法中抛出的异常时,所能捕获的只是父类型的方法所声明的异常。如果该方法被子类型所覆写,而子类型又抛出了新的受检异常,会导致编译错误。所以方法覆写要求抛出的受检异常类型也是兼容的。