logo

CuriousTab

CuriousTab

Discussion


Home Java Programming Declarations and Access Control Comments

  • Question
  • What will be the output of the program?
    class Super 
    { 
        public Integer getLength() 
        {
            return new Integer(4); 
        } 
    } 
    
    public class Sub extends Super 
    { 
        public Long getLength() 
        {
            return new Long(5); 
        } 
    
        public static void main(String[] args) 
        { 
            Super sooper = new Super(); 
            Sub sub = new Sub(); 
            System.out.println( 
            sooper.getLength().toString() + "," + sub.getLength().toString() ); 
        } 
    }
    


  • Options
  • A. 4, 4
  • B. 4, 5
  • C. 5, 4
  • D. Compilation fails.

  • Correct Answer
  • Compilation fails. 

    Explanation
    Option D is correct, compilation fails - The return type of getLength( ) in the super class is an object of reference type Integer and the return type in the sub class is an object of reference type Long. In other words, it is not an override because of the change in the return type and it is also not an overload because the argument list has not changed.

    Declarations and Access Control problems


    Search Results


    • 1. What will be the output of the program?
      public class Test 
      {
          public int aMethod()
          {
              static int i = 0;
              i++;
              return i;
          }
          public static void main(String args[])
          {
              Test test = new Test();
              test.aMethod();
              int j = test.aMethod();
              System.out.println(j);
          }
      }
      

    • Options
    • A. 0
    • B. 1
    • C. 2
    • D. Compilation fails.
    • Discuss
    • 2. What will be the output of the program?
      public class ArrayTest 
      { 
          public static void main(String[ ] args)
          { 
              float f1[ ], f2[ ]; 
              f1 = new float[10]; 
              f2 = f1; 
              System.out.println("f2[0] = " + f2[0]); 
          } 
      }
      

    • Options
    • A. It prints f2[0] = 0.0
    • B. It prints f2[0] = NaN
    • C. An error at f2 = f1; causes compile to fail.
    • D. It prints the garbage value.
    • Discuss
    • 3. What will be the output of the program?
      public class Test 
      {  
          public static void main(String args[])
          { 
              class Foo 
              {
                  public int i = 3;
              } 
              Object o = (Object)new Foo();
              Foo foo = (Foo)o;
              System.out.println("i = " + foo.i);
          }
      }
      

    • Options
    • A. i = 3
    • B. Compilation fails.
    • C. i = 5
    • D. A ClassCastException will occur.
    • Discuss
    • 4. What will be the output of the program?
      import java.util.*;
      public class NewTreeSet2 extends NewTreeSet 
      {
          public static void main(String [] args) 
          {
              NewTreeSet2 t = new NewTreeSet2();
              t.count();
          }
      }
      protected class NewTreeSet
      {
          void count() 
          {
              for (int x = 0; x < 7; x++,x++ ) 
              {
                  System.out.print(" " + x);
              }
          }
      }
      

    • Options
    • A. 0 2 4
    • B. 0 2 4 6
    • C. Compilation fails at line 2
    • D. Compilation fails at line 10
    • Discuss
    • 5. What will be the output of the program?
      public class A
      { 
          void A() /* Line 3 */
          {
              System.out.println("Class A"); 
          } 
          public static void main(String[] args) 
          { 
              new A(); 
          } 
      }
      

    • Options
    • A. Class A
    • B. Compilation fails.
    • C. An exception is thrown at line 3.
    • D. The code executes with no output.
    • Discuss
    • 6. What will be the output of the program?
      class Super
      { 
          public int i = 0; 
      
          public Super(String text) /* Line 4 */
          {
              i = 1; 
          } 
      } 
      
      class Sub extends Super
      {
          public Sub(String text)
          {
              i = 2; 
          } 
      
          public static void main(String args[])
          {
              Sub sub = new Sub("Hello"); 
              System.out.println(sub.i); 
          } 
      }
      

    • Options
    • A. 0
    • B. 1
    • C. 2
    • D. Compilation fails.
    • Discuss
    • 7. What will be the output of the program?
      class Base
      { 
          Base()
          {
              System.out.print("Base");
          }
      } 
      public class Alpha extends Base
      { 
          public static void main(String[] args)
          { 
              new Alpha(); /* Line 12 */
              new Base(); /* Line 13 */
          } 
      }
      

    • Options
    • A. Base
    • B. BaseBase
    • C. Compilation fails
    • D. The code runs with no output
    • Discuss
    • 8. 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));  
          } 
      }
      

    • Options
    • A. x = 0
    • B. x = 1
    • C. Compilation fails.
    • D. An exception is thrown at runtime.
    • Discuss
    • 9. What will be the output of the program?
      int i = 1, j = 10; 
      do 
      {
          if(i > j) 
          {
              break; 
          } 
          j--; 
      } while (++i < 5); 
      System.out.println("i = " + i + " and j = " + j);
      

    • Options
    • A. i = 6 and j = 5
    • B. i = 5 and j = 5
    • C. i = 6 and j = 4
    • D. i = 5 and j = 6
    • Discuss
    • 10. What will be the output of the program?
      boolean bool = true; 
      if(bool = false) /* Line 2 */
      {
          System.out.println("a"); 
      } 
      else if(bool) /* Line 6 */
      {
          System.out.println("b"); 
      } 
      else if(!bool) /* Line 10 */
      {
          System.out.println("c"); /* Line 12 */
      } 
      else 
      {
          System.out.println("d"); 
      }
      

    • Options
    • A. a
    • B. b
    • C. c
    • D. d
    • Discuss


    Comments

    There are no comments.

Enter a new Comment