Open In App

Java | Exception Handling | Question 4

Like Article
Like
Save Article
Save
Share
Report issue
Report




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) Caught base class exception
(B) Caught derived class exception
(C) Compiler Error because derived is not throwable
(D) Compiler Error because base class exception is caught before derived class


Answer: (D)

Explanation: See Catching base and derived classes as exceptions

Following is the error in below program

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


Quiz of this Question


Last Updated : 28 Jun, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads