Wednesday, April 17, 2013

Extends KeyWord Questions

1)       class A1 extends Exception{}
       class B1 extends A1{}
       class C1 extends B1{}
       public class Test {
          static void aMethod() throws C1{ throw new C1(); }
          public static void main(String[] args){
          int x = 10;
           try { aMethod(); }
           catch(A1 e) { System.out.println("Error A");}
           catch(B1 e) { System.out.println("Error B");}
          }
       }


A)Error B
B)compilation error
c)Runtime error
d)Error A

 Ans : compilation error
Reason : Unreachable catch block for B. It is already handled by the catch block for A




2) class A2 extends Exception{}
class B2 extends A2{}
class C2 extends B2{}
public class Test1 {
static void aMethod() throws C2
{
    throw new C2();
}
public static void main(String[] args){
int x = 10;
try {
    aMethod();
    }
catch(B2 e1) { System.out.println("Error B");}


catch(A2 e1) { System.out.println("Error A");}
          }
       }

A)Error B
B)compilation error
c)Runtime error
d)Error A

Ans : Error B

No comments:

Post a Comment