Home / Java Programming / Declarations and Access Control :: Discussion

Discussion :: Declarations and Access Control

  1. What will be the output of the program?

    class A  {     final public int GetResult(int a, int b) { return 0; }  }  class B extends A  {      public int GetResult(int a, int b) {return 1; }  }  public class Test  {     public static void main(String args[])      {          B b = new B();          System.out.println("x = " + b.GetResult(0, 1));       }  } 

  2. A.
    x = 0
    B.
    x = 1
    C.
    Compilation fails.
    D.
    An exception is thrown at runtime.

    View Answer

    Workspace

    Answer : Option C

    Explanation :

    The code doesn't compile because the method GetResult() in class A is final and so cannot be overridden.


Be The First To Comment