java mock tests for scjp

21
Sun Certified Java Programmer(SCJP 1.4) JavaBeat Home SCJP 1.4 Home Objectives Forums Mock Exams Online Mock Exam Resources Mock Exams MockQuestions - 1 MockQuestions - 2 MockQuestions - 3 MockQuestions - 4 MockQuestions - 5 MockQuestions - 6 MockQuestions - 7 MockQuestions - 8 MockQuestions - 9 MockQuestions - 10 MockQuestions - 11 MockQuestions - 12 MockQuestions - 13 MockQuestions - 14 MockQuestions - 15 MockQuestions - 16 MockQuestions - 17 MockQuestions - 18 MockQuestions - 19 MockQuestions - 20 Question 1. Read this piece of code carefully if("String".toString() == "String") System.out.println("Equal"); else System.out.println("Not Equal"); Answers 1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error. Question 2. Read this piece of code carefully if(" String ".trim() == "String") System.out.println("Equal"); else System.out.println("Not Equal"); Answers 1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error Question 3. Read the code below. Will be the result of attempting to compile and run the code below.

Upload: thyagarajan

Post on 16-Aug-2014

60 views

Category:

Documents


1 download

DESCRIPTION

Java mock tests for SCJP

TRANSCRIPT

Page 1: Java mock tests for SCJP

Sun Certified Java Programmer(SCJP 1.4)JavaBeat Home SCJP 1.4 Home Objectives Forums Mock Exams Online Mock Exam Resources

Mock ExamsMockQuestions - 1 MockQuestions - 2 MockQuestions - 3 MockQuestions - 4MockQuestions - 5 MockQuestions - 6 MockQuestions - 7 MockQuestions - 8MockQuestions - 9 MockQuestions - 10 MockQuestions - 11 MockQuestions - 12MockQuestions - 13 MockQuestions - 14 MockQuestions - 15 MockQuestions - 16MockQuestions - 17 MockQuestions - 18 MockQuestions - 19 MockQuestions - 20

Question 1.

         Read this piece of code carefully

if("String".toString() == "String")

    System.out.println("Equal");

else

    System.out.println("Not Equal");

Answers  

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error.

Question 2.

         Read this piece of code carefully  

if(" String ".trim() == "String")

    System.out.println("Equal");

else

    System.out.println("Not Equal");

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 3.

Read the code below. Will be the result of attempting to compile and run the code below.  

Page 2: Java mock tests for SCJP

public class AQuestion{     public void method(Object o)     {         System.out.println("Object Verion");     }

 public void method(String s) {    System.out.println("String Version"); }

 public static void main(String args[]) {     AQuestion question = new AQuestion();     question.method(null); }

}

Answers

1. The code does not compile. 2. The code compiles cleanly and shows "Object Version". 3. The code compiles cleanly and shows "String Version" 4. The code throws an Exception at Runtime.

Question 4.

Read the code below. Will be the result of attempting to compile and run the code below.  

public class AQuestion{     public void method(StringBuffer sb)     {         System.out.println("StringBuffer Verion");     }

 public void method(String s) {    System.out.println("String Version"); }

 public static void main(String args[]) {     AQuestion question = new AQuestion();     question.method(null); }

}

Answers

1. The code does not compile. 2. The code compiles cleanly and shows "StringBuffer Version". 3. The code compiles cleanly and shows "String Version"

Page 3: Java mock tests for SCJP

4. The code throws an Exception at Runtime.

Question 5.

    Read the following code below.

public interface AQuestion{     public abstract void someMethod() throws Exception;}

A Class implementing this interface should  

1. Necessarily be an abstract class. 2. Should have the method public abstract void someMethod(); 3. Should have the method public void someMethod() which has to throw an exception which is a subclass of

java.lang.Exception. 4. Should have the method public void someMethod() which need not throw an Exception.

Question 6.

        An Interface can never be private or protected.

Answers

        True         False

Question 7.

      A Vector class in jdk 1.2

1. is public 2. is final 3. implements java.util.List 4. is serializable 5. has only One constructor

Question 8.

     A String Class

1. is final 2. is public 3. is serializable 4. has a constructor which takes a StingBuffer Object as an Argument

Page 4: Java mock tests for SCJP

Question 9.  

public interface AQuestion{     void someMethod();}

The class which implements AQuestion

1. Should have someMethod which must necessarily be public. 2. Should have someMethod which could be "friendly" or public 3. Should have someMethod which should not throw any checked exceptions. 4. Should have someMethod which cannot be sychronized as sychronized is not in the signature of the interface

defination

Question 10.  

public class AQuestion{

 private int i = j; private int j = 10; public static void main(String args[]) {      System.out.println((new AQuestion()).i); }

}

Answers

1. Compiler error complaining about access restriction of private variables of AQuestion. 2. Compiler error complaining about forward referencing. 3. No error - The output is 0; 4. No error - The output is 10;

Question 11.

    public class AQuestion    {         private int i = giveMeJ();         private int j = 10;

         private int giveMeJ()         {              return j;         }

         public static void main(String args[])         {              System.out.println((new AQuestion()).i);

Page 5: Java mock tests for SCJP

         }    }

Answers  

1. Compiler error complaining about access restriction of private variables of AQuestion. 2. Compiler error complaining about forward referencing. 3. No Compilation error - The output is 0; 4. No Compilation error - The output is 10;

Question 12.

    public class AQuestion    {         public static void main(String args[])         {              System.out.println("Before Try");              try              {              }              catch(Throwable t)              {                   System.out.println("Inside Catch");              }              System.out.println("At the End");         }    }   

1. Compiler error complaining about the catch block, where no Throwable object can ever be thrown. 2. Compiler error - Throwable Object can not be caught, only Exceptions must be caught. 3. No compiler error. The lines "Before Try" and "At the end" are printed on the screen.

Question 13.  

public class AQuestion{     public static void main(String args[])     {          System.out.println("Before Try");          try          {          }          catch(java.io.IOException t)          {               System.out.println("Inside Catch");          }          System.out.println("At the End");      }}

Page 6: Java mock tests for SCJP

1. Compiler error complaining about the catch block where no IOException object can ever be thrown. 2. Compiler error - IOException not found. It must be imported in the first line of the code. 3. No compiler error. The lines "Before Try" and "At the end" are printed on the screen.

Question 14.

        The class java.lang.Exception

           i.   Is public            ii.  Extends Throwable            iii. Implements Throwable            iv.  Is serializable

Question 15.

         Read this piece of code carefully

if("String".trim() == "String".trim())    System.out.println("Equal");else    System.out.println("Not Equal");

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 16.

         Read this piece of code carefully  

if( "STRING".toUpperCase() == "STRING")    System.out.println("Equal");else    System.out.println("Not Equal");

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 17.

Page 7: Java mock tests for SCJP

        The following lines of code

             byte b = 0;             b += 1; 

1. results in b having the value 1. 2. causes a compiler error. 3. will require a cast (byte) before 1.

Question 18.

        The following express

            char c = -1; 

1. will cause a compiler error as the range of character is between 0 and 2^16 - 1. Will request for an explicit cast. 2. will not cause a compiler error and c will have the value -1; 3. c will not represent any ascii character. 4. c will still be a unicode character.

 

Question 19.

        Which of the following statements are true?  

1. A method can throw an Exception 2. A method can return an Exception

Question 20.

        All the  wrapper classes (Integer, Boolean, Float, Short, Long, Double and Character)  

1. are public 2. are serializable 3. are immutatable 4. extend java.lang.Number 5. are final

 

Question 21.

         Read this piece of code carefully

Page 8: Java mock tests for SCJP

if("String".substring(0) == "String")    System.out.println("Equal");else    System.out.println("Not Equal");

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 22.

         Read this piece of code carefully

if("String".substring(0,6) == "String")    System.out.println("Equal");else    System.out.println("Not Equal");

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 23.

         Read this piece of code carefully

if("String".replace('t','t') == "String")    System.out.println("Equal");else    System.out.println("Not Equal");

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 24.

         An Anonymous Inner class  

1.  Does not have a constructor 2.  Can implement an interface 3.  Can extend a non-final Class 4.  Can implement an interface and extend a non-final class (at the same time).

Page 9: Java mock tests for SCJP

Question 25.  

public class A{

 private void method1() throws Exception {      throw new RuntimeException(); }

 public void method2() {     try     {       method1();     }     catch(RuntimeException e)     {          System.out.println("Caught Runtime Exception");     }     catch(Exception e)     {          System.out.println("Caught Exception");     } }

 public static void main(String args[]) {      A a = new A();      a.method2(); }

}

The above lines of code - 

1.  will not compile. 2.  will compile and show - "Caught Runtime Exception". 3.  will compile and show - "Caught Exception". 4.  will compile and show both the messages one after another in the order they appear.

Question 26.

     public XXXX extends something1, something2  

1. XXX should be an interface,something1 and something2 need not, for the expression to be legal 2. XXX should be a class, something1 and something2 must be interfaces for the expression to be legal. 3. XXX, something1 and something2 must be interfaces for the expression to be legal. 4. The above statement is alway illegal in Java as multiple inheritance is not supported.

Page 10: Java mock tests for SCJP

Question 27.

 public class ADirtyOne {      char a = '\u000A'; }

 An attempt to compile the above class

1.  will complete successfully. 2.  will not compile as 0x000A is out of range for unicode charaters. 3.  will complain about illegal character assignment 4.  will compile but will cause a runtime error in accessing the variable.

Question 28.

 public class ADirtyOne {      //char a = '\u000A'; }

 An attempt to compile the above class

1.  will complete successfully. 2.  will compile sucessfully  but with a warning message. 3.  will  not compile - complains on an invalid expression.

Question 29.  

  public class AnotherDirtyOne {      private final int i =10;      private byte k = i; }

An attempt to compile and run the above code will

1. Cause a compilation error  due to invalid assignment ( int to byte) and will request for an explicit cast to be done on i [ k=(byte) i ].

2. Compilation occurs with a warning message - suggesting that the accuracy of k is questionable 3. Compilation will occur cleanly without any warning message. 4. Runtime error occurs when accessing k.

Question 30.

 interface One {      public void someMethod(); }

Page 11: Java mock tests for SCJP

 public class One_impl implements One {      public native void someMethod(); }

 Assuming that the native method is not provided in any local library, an attempt to compile and run the above lines of code will cause  

1. Compilation error - implimentations can never be native. 2. Compilation error - method not found in local libraries. 3. Runtime Exception - method not found in local libraries. 4. Compilation successfull but runtime error is thrown if and only if the method someMethod of class One_impl is

called.

Question 31.

         Read this piece of code carefully

if("String".replace('T','t') == "String")    System.out.println("Equal");else    System.out.println("Not Equal");

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 32.

         Read this piece of code carefully

System.out.println("String".substring(0,4));

Answers

1. the code will print "Strin" on the screen. 2. the code will print "Stri" on the screen. 3. the code will cause a compiler error.

Question 33.

         Read this piece of code carefully

if("String".replace('g','G') == "String".replace('g','G'))    System.out.println("Equal");else    System.out.println("Not Equal");

Page 12: Java mock tests for SCJP

Answers

1. the code will compile an print "Equal". 2. the code will compile an print "Not Equal". 3. the code will cause a compiler error

Question 34.  

 public class ADirtyOne {      public static void main(String args[])      {           System.out.println(Math.abs(Integer.MIN_VALUE));      } }

 an attempt to compile and run the above class will

1. Cause a compiler error. 2. Cause no error and the value printed on the screen is less than zero. 3. Cause no error and the value printed on the screen is one more than Integer.MAX_VALUE 4. Will throw a runtime exception due to overflow - Integer.MAX_VALUE is less in magnitue than

Integer.MIN_VALUE.

Question 35.

 public class ADirtyOne {      public static void main(String args[])      {           System.out.println(Math.min(0.0,-0.0));      } }

 An attempt to compile and run the above class will  

1. Cause a compiler Error. 2. Cause no error and print the value 0.0 on the screen. 3. Cause no error and prints the value -0.0 on the screen.

Question 36.  

 public class Base {      public void aMethod() throws ClassNotFoundException      {      } }

Page 13: Java mock tests for SCJP

 public class Derived extends Base {      public void aMethod() throws RuntimeException      {      } }

 Assuming that the classes are in two seperate files, compilation of the Dervied.java causes  

1. A compiler error because RuntimeException is not a subclass if ClassNotFoundException. 2. No compiler error.

Question 37.

        Math.round(Float.MAX_VALUE);    

1. Returns Integer.MAX_VALUE. 2. Returns a closest integer to Float.MAX_VALUE; 3. Causes a compilation error. 4. Causes a runtime Exception

Question  38.

        Read the code below carefully  

 import java.awt.*; public class TestFrame extends Frame {

  Button bNorth = new Button("North");  Button bSouth = new Button("South");  Button bEast = new Button("East");  Button bWest = new Button("West");  Button bCenter = new Button("Center");

  public TestFrame()  {       setLayout(new BorderLayout());       add(bSouth,BorderLayout.SOUTH);       add(bWest,BorderLayout.WEST);       add(bEast,BorderLayout.EAST);       add(bNorth,BorderLayout.NORTH);       add(bCenter);

       setLayout(new FlowLayout());

       validate();       pack();       setVisible(true);  }

Page 14: Java mock tests for SCJP

  public static void main(String args[])  {       TestFrame tf = new TestFrame();  }

 }

 What will be the effect trying compile and run the above class?  

1. Compilation error - a Layout cannot be set twice for a component. 2. Compilation error - One button is added without specifing the position in the borderLayout 3. No Compilation Error. The Buttons are arranged in a line in the order (From left to right)

"North","South","West","East" and "Center". 4. No Compilation Error. The Buttons are arranged in a line in the order (From left to right)

"South","West","East","North" and "Center". 5. No Compilation Error. The Buttons are arranged in the north , south, west, east and center regions, as in a

borderlayout. Any further additions will follow the rules of FlowLayout manager.

Question 39.  

 import java.awt.*; public class TestFrame extends Frame {

      Button bNorth = new Button("North");      Button bSouth = new Button("South");      Button bEast = new Button("East");      Button bWest = new Button("West");      Button bCenter = new Button("Center");

      public TestFrame()      {           setLayout(new FlowLayout());           add(bNorth);           add(bSouth);           add(bWest);           add(bEast);           add(bCenter);

           setLayout(new BorderLayout());           validate();           setSize(300,300);           setVisible(true);      }

      public static void main(String args[])      {           TestFrame tf = new TestFrame();      } }

 Attemping to compile and run the above code

Page 15: Java mock tests for SCJP

 

1. Will cause a compilation error - a Layout cannot be set after a component has been added with a preset Layout  Manager.

2. Will cause a Runtime  Exception - a Layout cannot be set after a component has been added with a preset Layout Manager.

3. Will compile cleanly and throw no runtime Exception. Only the button with label "Center" is visible and occupies the whole screen.

4. Will compile cleanly an throw no runtime Exception. All the buttons are arranged in a single line. Any other component added in future will follow the rules of the BorderLayout Manager.

5. Will compile and run cleanly, but no component is visible. 6. Will compile cleanly and throw no runtime Exception. The buttons are arranged as listed below

Question 40.

A frame uses BorderLayout Management and has components added to all the regions. One resizing the Frame Some space becomes available. The space is alloted to the regions, in which Order of preference?  

1. North , South, West, East and then Center. 2. North , West, South, Center and then Center. 3. Center, East, West, South and then North. 4. West, Center, South, North and then East.

Question 41.

    Read the following piece of code carefully.  

 import java.awt.*;

 public class TestFrame extends Frame {      Button firstOne = new Button("One");      Button secondOne = new Button("Two");

      public TestFrame()      {           add(firstOne,BorderLayout.NORTH);           add(secondOne,BorderLayout.NORTH);

           setSize(400,400);           setVisible(true);      }      public static void main(String args[])      {           TestFrame tf = new TestFrame();      }

Button Label PositionCenter  CenterNorth  NorthSouth  SouthEast East  West West 

Page 16: Java mock tests for SCJP

 }

 An Attempt  to compile and  run the above piece of code  

1. Causes compilation error - a component cannot be added to region which is already occupied by another component.

2. Causes Runtime Exception - a component cannot be added to region which is already occupied by another component.

3. Neither i or ii. The Frame comes up and only the button with label "Two" occupies the entire North region of the Frame.

4. Addition of secondOne causes firstOne to be removed from the container. 5. Addition of the secondOne causes the firstOne to be hidden in the container.

Question 42.  

 import java.awt.*;

 public class TestFrame extends Frame {      public TestFrame()      {           Button one = new Button("One");           Button two = new Button("Two");           Button three = new Button("Three");           setLayout(new FlowLayout());

           add(one);           add(two);           add(three);

           two.setVisible(false);

           setSize(1000,1000);           setVisible(true);           validate();      }     public static void main(String args[])     {           TestFrame tf = new TestFrame();     } }

1. If the above code runs, the buttons - one and three are laid out in a single row from left to right with a gap in between .

2. If the above code runs, the buttons - one and three are laid out in a single row from left to right with no  gap in between.

3. Code does not compile - a component can not be hidden after being added to a container. 4. Code gets compiled successfully  but throws runtime Exception - a component can not be hidden after being

added to a container.

Question 43.

     Read the code below carefully.

Page 17: Java mock tests for SCJP

 

import java.awt.*;

 public class TestFrame extends Frame {      public TestFrame()      {           setLayout(new GridLayout(2,1));           for(int i = 1 ; i <= 4 ;++i)           {               add(new Button(Integer.toString(i)));           }

           pack();           setVisible(true);      }

      public static void main(String args[])      {           TestFrame tf = new TestFrame();      } }

1. The code above will not compile  - The number of components added is more than the magnitude of row * columns of the Grid Layout Manager.

2. The code will throw a runtime Exception  - The number of components added is more than the magnitude of row * columns of the Grid Layout Manager.

3. The code will compile cleanly and when run Four buttons are visible in 2 rows and 2 columns. 4. The code will compile and when run, Four buttons are seen in a single Column.

Question 44.

    Read the code below carefully.  

 import java.awt.*;

 public class TestFrame extends Frame {      public TestFrame()      {           setLayout(new GridLayout());           for(int i = 1 ; i <= 4 ;++i)           {                add(new Button(Integer.toString(i)));           }

           pack();           setVisible(true);       }

      public static void main(String args[])      {           TestFrame tf = new TestFrame();      } }

Page 18: Java mock tests for SCJP

1. The code will not compile - the grid layout does not have a no-argument constructor.. 2. The code compiles and when run all the buttons are seen in a single column. 3. The code compiles and when run all the buttons are seen in a singe row. 4. The code compiles and when run all button are added one on top or another and only the last one added is

visible. 5. The code compiles , but throws a runtime Exception when components are added.

Question 45.

     Which of the following statements are true about setLayout() method in java.awt.ScrollPane  

1. Does nothing. 2. Throws UnsupportedMethodException when called. 3. It is not overriden in java.awt.ScrollPane. 4. Sets the layout to the specified Layout Manager.

Question 46.

    A class which has all its constructors declared as private

1. Cannot be instantiated by any other class. 2. Cannot be extended. 3. Both i and ii. 4. has to be declared final.

Question 47.

     The GridBagConstraints Class

1. Is serializable. 2. Is cloneable. 3. belongs to the java.awt package. 4. extends Object.

Question 48.

    Read the following code carefully  

import java.awt.*;public class TestFrame extends Frame{         public TestFrame()        {                CheckboxGroup chg = null;                Checkbox ch = new Checkbox("Test",true,chg);

                setLayout(new FlowLayout());                add(ch);                pack();                setVisible(true);

Page 19: Java mock tests for SCJP

          }        public static void main(String args[])        {            TestFrame tf = new TestFrame();        }}

    An Attempt to compile and run the above code

1. will cause a compilation error as the checkbox group is null in the constructor. 2. will compile successfully but throws a runtime exception because the checkbox group is null in the constructor

of the check box 3. will compile and run successfully. The checkbox appears as a single radio button which is always true. 4. will compile and run successfully. The checkbox bears its original appearence and does not appear as a radio

button.

Question  49.

    Read the following code carefully  

import java.awt.*;public class TestFrame extends Frame{         public TestFrame()        {                CheckboxGroup chg = new CheckboxGroup();                Checkbox ch = new Checkbox("Test",true,chg);

                setLayout(new FlowLayout());                add(ch);                pack();                setVisible(true);          }        public static void main(String args[])        {            TestFrame tf = new TestFrame();        }}

    An Attempt to compile and run the above code

1. will cause a compilation error as the checkbox group contains only one checkbox. 2. will compile successfully but throws a runtime exception because the checkbox group contains only one

checkbox. 3. will compile and run successfully. The checkbox appears as a single radio button which is always true. 4. will compile and run successfull. The checkbox bears its original appearence and does not appear as a radio

button.

Question  50.

Which of the following methods of the java.io.File class throws a checked Exceptions - 

Page 20: Java mock tests for SCJP

1. getCanonicalPath() 2. getCanonicalFile() 3. getAbsolutePath() 4. getAbsoluteFile() 5. createTempFile() 6. createNewFile() 7. mkdir() 8. mkdirs() 9. toURL()

 

Answers:

1. 1 2. 2 3. 3 4. 1 5. 4 6. FALSE 7. 1,3,4 8. 1,2,3,4 9. 1,3

10. 2 11. 3 12. 3 13. 1 14. 1,2,4 15. 1 16. 1 17. 1 18. 1 19. 1,2 20. 1,2,3,5 21. 1 22. 1 23. 1 24. 1,2,3 25. 2 26. 3 27. 3 28. 3 29. 3 30. 4 31. 1 32. 2 33. 2 34. 2 35. 3 36. 2 37. 1 38. 4 39. 5 40. 1 41. 3,4 42. 2 43. 3 44. 3 45. 1 46. 3 47. 1,2,3,4 48. 4 49. 3

Page 21: Java mock tests for SCJP

50. 1,2,5,6,9

 

JavaBeat 2005, India (www.javabeat.net)Submit a Site - Directory - Submit Articles