logo

CuriousTab

CuriousTab

Discussion


Home Java Programming Java.lang Class See What Others Are Saying!
  • Question
  • What will be the output of the program?
    interface Foo141 
    { 
        int k = 0; /* Line 3 */
    } 
    public class Test141 implements Foo141 
    {
        public static void main(String args[]) 
        {
            int i; 
            Test141 test141 = new Test141(); 
            i = test141.k; /* Line 11 */
            i = Test141.k; 
            i = Foo141.k; 
        } 
    }
    


  • Options
  • A. Compilation fails.
  • B. Compiles and runs ok.
  • C. Compiles but throws an Exception at runtime.
  • D. Compiles but throws a RuntimeException at runtime.

  • Correct Answer
  • Compiles and runs ok. 

    Explanation
    The variable k on line 3 is an interface constant, it is implicitly public, static, and final. Static variables can be referenced in two ways:

    Via a reference to any instance of the class (line 11)

    Via the class name (line 12).


    More questions

    • 1. What will be the output of the program?
      int i = l, j = -1; 
      switch (i) 
      {
          case 0, 1: j = 1; /* Line 4 */
          case 2: j = 2; 
          default: j = 0; 
      } 
      System.out.println("j = " + j); 
      

    • Options
    • A. j = -1
    • B. j = 0
    • C. j = 1
    • D. Compilation fails.
    • Discuss
    • 2. What will be the output of the program?
      public class BoolTest 
      {
          public static void main(String [] args) 
          {
              int result = 0;
      
              Boolean b1 = new Boolean("TRUE");
              Boolean b2 = new Boolean("true");
              Boolean b3 = new Boolean("tRuE");
              Boolean b4 = new Boolean("false");
      
              if (b1 == b2)  /* Line 10 */
                  result = 1;
              if (b1.equals(b2) ) /* Line 12 */
                  result = result + 10;
              if (b2 == b4)  /* Line 14 */
                  result = result + 100;
              if (b2.equals(b4) ) /* Line 16 */
                  result = result + 1000;
              if (b2.equals(b3) ) /* Line 18 */
                  result = result + 10000;
      
              System.out.println("result = " + result);
          }
      }
      

    • Options
    • A. 0
    • B. 1
    • C. 10
    • D. 10010
    • Discuss
    • 3. What will be the output of the program?
      int i = 0, j = 5; 
      tp: for (;;) 
          {
              i++;  
              for (;;) 
              {
                  if(i > --j) 
                  {
                      break tp; 
                  } 
              } 
              System.out.println("i =" + i + ", j = " + j);
      

    • Options
    • A. i = 1, j = 0
    • B. i = 1, j = 4
    • C. i = 3, j = 4
    • D. Compilation fails.
    • Discuss
    • 4. Which two statements are equivalent?

      1. 3/2
      2. 3<2
      3. 3*4
      4. 3<<2

    • Options
    • A. 1 and 2
    • B. 2 and 3
    • C. 3 and 4
    • D. 1 and 4
    • Discuss
    • 5. Which three guarantee that a thread will leave the running state?

      1. yield()
      2. wait()
      3. notify()
      4. notifyAll()
      5. sleep(1000)
      6. aLiveThread.join()
      7. Thread.killThread()

    • Options
    • A. 1, 2 and 4
    • B. 2, 5 and 6
    • C. 3, 4 and 7
    • D. 4, 5 and 7
    • Discuss
    • 6. 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
    • 7. What will be the output of the program?
      public class Q126 implements Runnable 
      { 
          private int x; 
          private int y; 
      
          public static void main(String [] args) 
          { 
              Q126 that = new Q126(); 
              (new Thread(that)).start( ); /* Line 8 */
              (new Thread(that)).start( ); /* Line 9 */
          } 
          public synchronized void run( ) /* Line 11 */
          { 
              for (;;) /* Line 13 */
              { 
                  x++; 
                  y++; 
                  System.out.println("x = " + x + "y = " + y); 
              } 
          } 
      }
      

    • Options
    • A. An error at line 11 causes compilation to fail
    • B. Errors at lines 8 and 9 cause compilation to fail.
    • C. The program prints pairs of values for x and y that might not always be the same on the same line (for example, "x=2, y=1")
    • D. The program prints pairs of values for x and y that are always the same on the same line (for example, "x=1, y=1". In addition, each value appears once (for example, "x=1, y=1" followed by "x=2, y=2")
    • Discuss
    • 8. Which cause a compiler error?

    • Options
    • A. int[ ] scores = {3, 5, 7};
    • B. int [ ][ ] scores = {2,7,6}, {9,3,45};
    • C. String cats[ ] = {"Fluffy", "Spot", "Zeus"};
    • D. boolean results[ ] = new boolean [] {true, false, true};
    • E. Integer results[ ] = {new Integer(3), new Integer(5), new Integer(8)};
    • Discuss
    • 9. What will be the output of the program?
      class SSBool 
      {
          public static void main(String [] args) 
          {
              boolean b1 = true;
              boolean b2 = false;
              boolean b3 = true;
              if ( b1 & b2 | b2 & b3 | b2 ) /* Line 8 */
                  System.out.print("ok ");
              if ( b1 & b2 | b2 & b3 | b2 | b1 ) /*Line 10*/
                  System.out.println("dokey");
          }
      }
      

    • Options
    • A. ok
    • B. dokey
    • C. ok dokey
    • D. No output is produced
    • E. Compilation error
    • Discuss
    • 10. Which will legally declare, construct, and initialize an array?

    • Options
    • A. int [] myList = {"1", "2", "3"};
    • B. int [] myList = (5, 8, 2);
    • C. int myList [] [] = {4,9,7,0};
    • D. int myList [] = {4, 3, 7};
    • Discuss


    Comments

    There are no comments.

Enter a new Comment