logo

CuriousTab

CuriousTab

Discussion


Home Java Programming Java.lang Class See What Others Are Saying!
  • Question
  • What will be the output of the program?
    public class WrapTest 
    {
        public static void main(String [] args) 
        {
            int result = 0;
            short s = 42;
            Long x = new Long("42");
            Long y = new Long(42);
            Short z = new Short("42");
            Short x2 = new Short(s);
            Integer y2 = new Integer("42");
            Integer z2 = new Integer(42);
    
            if (x == y) /* Line 13 */
                result = 1;
            if (x.equals(y) ) /* Line 15 */
                result = result + 10;
            if (x.equals(z) ) /* Line 17 */
                result = result + 100;
            if (x.equals(x2) ) /* Line 19 */
                result = result + 1000;
            if (x.equals(z2) ) /* Line 21 */
                result = result + 10000;
    
            System.out.println("result = " + result);
        }
    }
    


  • Options
  • A. result = 1
  • B. result = 10
  • C. result = 11
  • D. result = 11010

  • Correct Answer
  • result = 10 

    Explanation
    Line 13 fails because == compares reference values, not object values. Line 15 succeeds because both String and primitive wrapper constructors resolve to the same value (except for the Character wrapper). Lines 17, 19, and 21 fail because the equals() method fails if the object classes being compared are different and not in the same tree hierarchy.

    More questions

    • 1. What will be the output of the program?
      public class X 
      {  
          public static void main(String [] args) 
          {
              try 
              {
                  badMethod();  
                  System.out.print("A"); 
              }  
              catch (Exception ex) 
              {
                  System.out.print("B");  
              } 
              finally 
              {
                  System.out.print("C"); 
              } 
              System.out.print("D"); 
          }  
          public static void badMethod() 
          {
              throw new Error(); /* Line 22 */
          } 
      }
      

    • Options
    • A. ABCD
    • B. Compilation fails.
    • C. C is printed before exiting with an error message.
    • D. BC is printed before exiting with an error message.
    • Discuss
    • 2. What will be the output of the program?
      class BoolArray 
      {
          boolean [] b = new boolean[3];
          int count = 0;
      
          void set(boolean [] x, int i) 
          {
              x[i] = true;
              ++count;
          }
      
          public static void main(String [] args) 
          {
              BoolArray ba = new BoolArray();
              ba.set(ba.b, 0);
              ba.set(ba.b, 2);
              ba.test();
          }
      
          void test() 
          {
              if ( b[0] && b[1] | b[2] )
                  count++;
              if ( b[1] && b[(++count - 2)] )
                  count += 7;
              System.out.println("count = " + count);
          }
      }
      

    • Options
    • A. count = 0
    • B. count = 2
    • C. count = 3
    • D. count = 4
    • Discuss
    • 3. What will be the output of the program?
      public class X 
      {  
          public static void main(String [] args) 
          {
              try 
              {
                  badMethod(); /* Line 7 */
                  System.out.print("A"); 
              } 
              catch (Exception ex) /* Line 10 */
              {
                  System.out.print("B"); /* Line 12 */
              } 
              finally /* Line 14 */
              {
                  System.out.print("C"); /* Line 16 */
              }  
              System.out.print("D"); /* Line 18 */
          } 
          public static void badMethod() 
          {
              throw new RuntimeException(); 
          } 
      }
      

    • Options
    • A. AB
    • B. BC
    • C. ABC
    • D. BCD
    • Discuss
    • 4. What will be the output of the program?
      public class MyProgram 
      {
          public static void main(String args[])
          {
              try 
              {
                  System.out.print("Hello world ");
              }
              finally 
              {
                  System.out.println("Finally executing ");
              }
          }
      }
      

    • Options
    • A. Nothing. The program will not compile because no exceptions are specified.
    • B. Nothing. The program will not compile because no catch clauses are specified.
    • C. Hello world.
    • D. Hello world Finally executing
    • Discuss
    • 5. Which two statements are true about comparing two instances of the same class, given that the equals() and hashCode() methods have been properly overridden?

      1. If the equals() method returns true, the hashCode() comparison == must return true.
      2. If the equals() method returns false, the hashCode() comparison != must return true.
      3. If the hashCode() comparison == returns true, the equals() method must return true.
      4. If the hashCode() comparison == returns true, the equals() method might return true.

    • Options
    • A. 1 and 4
    • B. 2 and 3
    • C. 3 and 4
    • D. 1 and 3
    • Discuss
    • 6. Which three are methods of the Object class?

      1. notify();
      2. notifyAll();
      3. isInterrupted();
      4. synchronized();
      5. interrupt();
      6. wait(long msecs);
      7. sleep(long msecs);
      8. yield();

    • Options
    • A. 1, 2, 4
    • B. 2, 4, 5
    • C. 1, 2, 6
    • D. 2, 3, 4
    • Discuss
    • 7. Which two can be used to create a new Thread?

      1. Extend java.lang.Thread and override the run() method.
      2. Extend java.lang.Runnable and override the start() method.
      3. Implement java.lang.Thread and implement the run() method.
      4. Implement java.lang.Runnable and implement the run() method.
      5. Implement java.lang.Thread and implement the start() method.

    • Options
    • A. 1 and 2
    • B. 2 and 3
    • C. 1 and 4
    • D. 3 and 4
    • Discuss
    • 8. What is the numerical range of a char?

    • Options
    • A. -128 to 127
    • B. -(215) to (215) - 1
    • C. 0 to 32767
    • D. 0 to 65535
    • Discuss
    • 9. Which four can be thrown using the throw statement?

      1. Error
      2. Event
      3. Object
      4. Throwable
      5. Exception
      6. RuntimeException

    • Options
    • A. 1, 2, 3 and 4
    • B. 2, 3, 4 and 5
    • C. 1, 4, 5 and 6
    • D. 2, 4, 5 and 6
    • Discuss
    • 10. Which three are valid method signatures in an interface?

      1. private int getArea();
      2. public float getVol(float x);
      3. public void main(String [] args);
      4. public static void main(String [] args);
      5. boolean setFlag(Boolean [] test);

    • Options
    • A. 1 and 2
    • B. 2, 3 and 5
    • C. 3, 4, and 5
    • D. 2 and 4
    • Discuss


    Comments

    There are no comments.

Enter a new Comment