Excepción y Herencia en Java

Supongamos que tenemos este problema

public class Father{
    public void method1(){...}
}

public class Child1 extends Father{
    public void method1() throws Exception{
    super.method1();
    ... 
    }

}

Child1 se extiendeFather y anulamethod1 pero dada la implementaciónChild1.method1 Ahora lanza una excepción. Esto no se compilará, ya que el método de anulación no puede generar nuevas excepciones.

¿Cuál es la mejor solución?

Propagar la excepción requerida a laFather. Para mí esto es contra la encapsulación, la herencia y la POO general (laFather potencialmente lanza una excepción que nunca sucederá).Utilizar unaRuntimeException ¿en lugar? Esta solución no propagará elException alFather, pero los documentos de Oracle y otras fuentes establecen que la clase de excepciones se debe usar cuando "El código del cliente no puede hacer nada". Este no es el caso, esta excepción será útil para recuperar blablabla (¿por qué es incorrecto usarRuntimeException ¿en lugar?).Otro..

Respuestas a la pregunta(5)

Su respuesta a la pregunta