logo

CuriousTab

CuriousTab

Discussion


Home Java Programming Declarations and Access Control Comments

  • Question
  • 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.

  • Correct Answer
  • Compilation fails. 

    Explanation
    A default no-args constructor is not created because there is a constructor supplied that has an argument, line 4. Therefore the sub-class constructor must explicitly make a call to the super class constructor:

    Declarations and Access Control problems


    Search Results


    • 1. 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.
    • Discuss
    • 2. 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
    • 3. 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
    • 4. 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
    • 5. 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
    • 6. 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
    • 7. 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
    • 8. 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
    • 9. 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
    • 10. What will be the output of the program?
      public class If2 
      {
          static boolean b1, b2;
          public static void main(String [] args) 
          {
              int x = 0;
              if ( !b1 ) /* Line 7 */
              {
                  if ( !b2 ) /* Line 9 */
                  {
                      b1 = true;
                      x++;
                      if ( 5 > 6 ) 
                      {
                          x++;
                      }
                      if ( !b1 ) 
                          x = x + 10;
                      else if ( b2 = true ) /* Line 19 */
                          x = x + 100;
                      else if ( b1 | b2 ) /* Line 21 */
                          x = x + 1000;
                  }
              }
              System.out.println(x);
          }
      }
      

    • Options
    • A. 0
    • B. 1
    • C. 101
    • D. 111
    • Discuss


    Comments

    There are no comments.

Enter a new Comment