Java | Manejo de excepciones | Pregunta 4

class Base extends Exception {}
class Derived extends Base  {}
  
public class Main {
  public static void main(String args[]) {
   // some other stuff
   try {
       // Some monitored code
       throw new Derived();
    }
    catch(Base b)     { 
       System.out.println("Caught base class exception"); 
    }
    catch(Derived d)  { 
       System.out.println("Caught derived class exception"); 
    }
  }
} 

(A) Excepción de clase base detectada
(B) Excepción de clase derivada detectada
(C) Error del compilador porque la derivada no se puede lanzar
(D) Error del compilador porque la excepción de la clase base se detecta antes que la clase derivada

Respuesta: (D)
Explicación: Véase Captura de base y derivada clases como excepciones

El siguiente es el error en el siguiente programa

Main.java:12: error: exception Derived has already been caught
    catch(Derived d)  { System.out.println("Caught derived class exception"); } 

Cuestionario de esta pregunta

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *