oDesk Java Test v3 Test Answers 2015



1. What is the output of the given program?

public class Test93 {
        private int x = 0;

        public static void main(String[] args) {
                new Test93().test();
        }

        private int f(int x) { return ++x; }
        private int g(int y) { return x++; }

        private void test() {
                System.out.print( f(x)==f(x) ? "f" : "#" );
                System.out.print( g(x)==g(x) ? "g" : "#" );
        }
}
Answers:
• ##
• #g
• f#
• fg

2. There are three classes named A, B, and C. The class B is derived from class A and class C is derived from B. Which of the following relations are correct for the given classes?
Answers:
• Any instance of A is an instance of B.
• Any instance of B is an instance of A.
• Any instance of C is an instance of B.
• Any instance of B is an instance of C.
3. What is the output of the given console application?

public class Test19 {
        public static void main(String[] args) {
                final int X = 9;
                int[][] a = {{5, 4, 3}, {9, 7, 2}, {1, 6, 8}};
                for (int i=0; i<3; i++) {
                        for (int j=0; j<3; j++) {
                                if (a[i][j] == X) break;
                                System.out.print(a[i][j] + "" "");
                        }
                }
        }
}
Answers:
• '5
• 5 4 3
• 5 4 3 1 6 8
• 5 4 3 7 2 1 6 8
4. Which method is called by the servlet container just after the servlet is removed from service?
Answers:
• public void finalize() {// code...}
• public void destroy() {// code...}
• public void destroy()throws ServletException {// code...}
• public void finalize()throws ServletException {// code...}
5. What is the output of the given program?

public class Test106 {
        public static void main(String[] args) {
                Integer x = 0;
                Integer y = 0;
                Integer a = 1000;
                Integer b = 1000;
                System.out.println( (a==b) + "; " + (x==y) );
        }
}
Answers:
• The code will not compile, because Integer is a class, and an object must be created by calling its constructor: Integer a = new Integer(1); or, alternatively, a primitive type must be used: int a = 1;
• true; true
• false; false
• false; true
6. What is the output of the given program?

public class Test120 extends _Test120 {
        {
                System.out.print("_INIT");
        }
        static {
                System.out.print("_STATIC");
        }
        Test120() {
                System.out.print("_CONST");
        }
        public static void main(String[] args) {
                System.out.print("_MAIN");
                new Test120();
        }
}
class _Test120 {
        {
                System.out.print("_BIN");
        }
        static {
                System.out.print("_START");
        }
        _Test120() {
                System.out.print("_BASE");
        }
}
Answers:
• _START_STATIC_MAIN_BIN_BASE_INIT_CONST
• _STATIC_START_MAIN_BIN_BASE_INIT_CONST
• _STATIC_MAIN_START_BIN_BASE_INIT_CONST
• _START_MAIN_STATIC_BIN_BASE_INIT_CONST
7. What is the output of the given console application?

public class Test31 {
        public static void main(String[] args) {
                test();
        }
        public static void test() {
                try {
                        System.out.print("-try");
                        return;
                } catch (Exception e) {
                        System.out.print("-catch");
                } finally {
                        System.out.print("-finally");
                }
        }
}
Answers:
• -try
• -try-catch
• -try-finally
• -try-catch-finally
8. What is the output of the given code?

public class Test15 {
        public static void main(String[] args) {
                VO a = new VO(2);
                VO b = new VO(3);
                swapONE(a, b);
                print(a, b);
                swapTWO(a, b);
                print(a, b);
        }

        private static void print(VO a, VO b) {
                System.out.print(a.toString() + b.toString());
        }

        public static void swapONE(VO a, VO b) {
                VO tmp = a;
                a = b;
                b = tmp;
        }
        public static void swapTWO(VO a, VO b) {
                int tmp = a.x;
                a.x = b.x;
                b.x = tmp;
        }
}

class VO {
        public int x;
        public VO(int x) {
                this.x = x;
        }
        public String toString() {
                return String.valueOf(x);
        }       
}
Answers:
• 2332
• 3232
• 3223
• 2323
9. What would happen on trying to compile and run the following code?

class House {

 public final void MaintainMethod() {
  System.out.println("MaintainMethod");
 }
}

public class Building extends House {

 public static void main(String argv[]) {
  House h = new House();
  h.MaintainMethod();
 }
}
Answers:
• A runtime error will occur because class House is not defined as final.
• Successful compilation and output of "MaintainMethod" at run time.
• A compilation error indicating that a class with any final methods must be declared final itself.
• A compilation error indicating that you cannot inherit from a class with final methods.
10. What is the output of the given program?

public class Test130 {
        public static void main(String[] args) {
                A a = new A2();
                B b = new B2();
                System.out.println(a.a + """" + b.b());
        }
}
class A {
        public int a = 1;
}
class A2 extends A {
        public int a = 2;
}
class B {
        public int b() { return 1; }
}
class B2 extends B {
        public int b() { return 2; }
}
Answers:
• 11
• 12
• 21
• 22
11. SQLException has a feature of chaining - identify the right code to execute the same from the following options:
Answers:
• catch(SQLException e) { out.println(e.getMessage()); while((e=e.getNextException())!=null) { out.println(e.getMessage()); } }
• catch(SQLException e) { out.println(e.getNextException()); while((e=e.getMessage())!=null) { out.println(e.getMessage()); } }
• catch(SQLException e) { out.println(e.getMessage()); while((e=e.getEncapsulatedException())!=null) { out.println(e.getMessage()); } }
• catch(ClassNotFoundException e) { out.println(e.getMessage()); while((e=e.getNextException())!=null) { out.println(e.getMessage()); } }
• catch(ClassNotFoundException e){ { out.println(e.getMessage()); } }
12. What is the result of an attempt to compile and run the given program?

public class Test107 {
        public static void main(String[] args) {
                System.out.println(test());
        }
        private static int test() {
                return (true ? null : 0);
        }
}
Answers:
• It gets a compiler error, because of an attempt to return null from the method with return type "int".
• It compiles, but throws NullPointerException at run-time.
• It compiles, runs, and prints "null" (without quotes).
• It compiles, runs, and prints "0" (without quotes).
13. Which statements are true regarding ServletContext Init Parameters in the deployment descriptor?
Answers:
• They are set at deployment-time, but accessed at run-time.
• They are accessible from any session within that context.
• They are not set at deployment-time, but accessed at run-time.
• They are set at deployment-time and can be updated at run-time.
14. Which of the following methods are members of the Vector class and allow you to input a new element?
Answers:
• addItem
• append
• insert
• addElement
15. In which class is the notify method defined?
Answers:
• Thread
• Applet
• Runnable
• Object
16. Which design pattern reduces network traffic by acting as a caching proxy of a remote object?
Answers:
• DataAccess Object
• Model-View-Controller
• Value Object
• Business Delegate
17. What is the output of the given program?

public class Test89 {
        public static void main(String[] args) {
                T x = new T("X", null); x.start();
                T y = new T("Y", x); y.start();
                T z = new T("Z", y); z.start();
        }
}
class T extends Thread {
        private Thread predecessor;
        private String name;
        public T(String name, Thread predecessor) {
                this.predecessor = predecessor;
                this.name = name;
        }
        public void run() {
                try {
                        Thread.sleep((int)(Math.random()*89));
                        System.out.print(name);
                } catch (InterruptedException ie) {
                        ie.printStackTrace();
                }
        }
}
Answers:
• always XYZ
• always ZYX
• any of the following: XYZ, XZY, YXZ, YZX, ZXY, ZYX
• any of the following: XYZ, ZYX
18. The principal finder method that must be implemented by every entity bean class is:
Answers:
• findByPrimaryKey()
• ejbGetByPrimaryKey()
• ejbFindPrimayKey()
• getPrimaryKey()
• getFinder()
19. Which option lists Java access modifiers in the right order from the most permissive to the most restrictive?
Answers:
• public, protected, <i>no modifier/default/package</i>, private
• public, <i>no modifier/default/package</i>, protected, private
• <i>no modifier/default/package</i>, public, protected, private
• public, protected, private, <i>no modifier/default/package</i>
20. What should be the replacement of "//ABC" in the following code?

class Krit
{
    String str= new String("OOPS !!! JAVA");
    public void KritMethod(final int iArgs)
    {
      int iOne;
      class Bicycle
      {
        public void sayHello()
        {
          //ABC
        }
      }
    }
    public void Method2()
    {
      int iTwo;
    }
}
Answers:
• System.out.print(str);
• System.out.print(iOne);
• System.out.print(iTwo);
• System.out.print(iArgs);
21. Assuming that val has been defined as an int for the code below, which values of val will result in "Test C" being printed?

if( val > 4 ) {

 System.out.println("Test A");

} else if( val > 9 ) {

 System.out.println("Test B");

} else

 System.out.println("Test C");
Answers:
• val < 0
• val between 0 and 4
• val between 4 and 9
• val > 9
• val = 0
• No values for val will result in "Test C" being printed.
22. What is the output of the given program?

public class Test118 extends _Test118 {
        {
                System.out.print("_INIT");
        }
        static {
                System.out.print("_STATIC");
        }
        Test118() {
                System.out.print("_CONST");
        }
        public static void main(String[] args) {
                System.out.print("_MAIN");
                new Test118();
        }
}
class _Test118 {
        _Test118() {
                System.out.print("_BASE");
        }
}
Answers:
• _STATIC_MAIN_BASE_INIT_CONST
• _STATIC_MAIN_INIT_BASE_CONST
• _INIT_STATIC_MAIN_BASE_CONST
• _INIT_STATIC_MAIN_BASE_CONST
23. What will be the output, if the following program is run?
public class Test8 {
    public static void main(String[] args) {
        System.out.println(Math.sqrt(-4));
    }
}
Answers:
• null
• 2
• NaN
• -2.0
24. What will be the output of this program?

public class Test {

 public static void main(String args[]) {

  int a, b;
  a = 2;
  b = 0;
  System.out.println(g(a, new int[] { b }));
 }

 public static int g(int a, int b[]) {

  b[0] = 2 * a;
  return b[0];
 }
}
Answers:
• 0
• 1
• An exception will occur
• 4
25. Which of the following statements is true?
Answers:
• public interface RemoteTrain extends java.rmi.Remote
• public class RemoteTrain extends java.rmi.Remote
• public interface RemoteTrain extends java.net.Remote
• public class RemoteTrain extends java.net.Remote
• private class RemoteTrain extends java.net.Remote
26. The JDK comes with a special program that generates skeleton and stub objects that is known as:
Answers:
• java.rmi.Remote
• rmi
• rmic
• rmijava
• javac
27. How many objects are created by the following code?


Object a, b, c, d, e;

e = new Object ();

b = a = e;

e = new Object ();
Answers:
• 2
• 5
• 4
• That code is invalid.
28. Which of these interfaces is the most applicable when creating a class that associates a set of keys with a set of values?
Answers:
• Collection
• Set
• Map
• SortedSet
29. Which of the following is the correct syntax for creating a Session object?
Answers:
• HttpSession ses=request.getSession(true);
• HttpSession ses=getSession(true);
• HttpSession ses=request.getSession();
• HttpSession ses=request.getSessionObject(true);
• HttpSession ses=response.getSession(true);
30. Which statement is true about the given code?

public class Test78 {
        public static void main(String[] args) throws Exception {
                new JBean().setHeight(1).setWidth(2).setDepth(3).setDensity(9);
        }
}
class JBean {
        private int height, width, depth, density;
        public JBean setHeight  (int h) { this.height  = h; return this; }
        public JBean setWidth   (int w) { this.width   = w; return this; }
        public JBean setDepth   (int d) { this.depth   = d; return this; }
        public JBean setDensity (int d) { this.density = d; return this; }
}
Answers:
• The code does not compile, because two setters have a formal parameter with the same name.
• The setters of the JBean class are JavaBean-compliant.
• The code compiles, but throws a NullPointerException at run-time.
• The code compiles and runs.
31. Choose all valid forms of the argument list for the FileOutputStream constructor shown below:
Answers:
• FileOutputStream( FileDescriptor fd )
• FileOutputStream( String n, boolean a )
• FileOutputStream( boolean a )
• FileOutputStream()
• FileOutputStream( File f )
32. Which of the following methods should be invoked by the container to get a bean back to its working state?
Answers:
• EJBPassivate()
• EJBActivate()
• EJBRemove()
• EJBOpen()
33. Select all true statements:
Answers:
• An abstract class can have non-abstract methods.
• A non-abstract class can have abstract methods.
• If a non-abstract class implements interface, it must implement all the methods of the interface.
• If a non-abstract class inherits abstract methods from its abstract superclass, it must implement the inherited abstract methods.
34. Which option could be used to see additional warnings about code that mixes legacy code with code that uses generics?
Answers:
• -Xlint:unchecked
• -Xlint:-unchecked
• -Xswitchcheck or -Xlint:fallthrough depending on the version of Java
• -classpath or -cp
35. Assuming the servlet method for handling HTTPGET requests is doGet(HttpServletRequest req, HTTPServletResponse res), how can the request parameter in that servlet be retrieved?
Answers:
• String value=req.getInitParameter(10);
• String value=req.getInitParameter("product");
• String value=res.getParameter("product");
• String value=req.getParameter("product");
36. Which of these is not an event listener adapter defined in the java.awt.event package?
Answers:
• ActionAdapter
• MouseListener
• WindowAdapter
• FocusListener
37. What would be the result of compiling and running the following code class?

public class Test {

 public static void main(String args[]) {

  Test t = new Test();
  t.start();
 }

 public void start() {

  int i = 2;
  int j = 3;
  int x = i & j;
  System.out.println(x);
 }
}
Answers:
• The code will not compile.
• The code will compile but will give a runtime error.
• The code will compile and print 2.
• The code will compile and print 1.
38. Which of the following are the methods of the Thread class?
Answers:
• stay()
• go()
• yield()
• sleep(long millis)
39. What protocol is used by the DatagramSocket class?
Answers:
• STCP
• UDP
• TCP
• FTP
• None of the above
40. Which statements are true? Select all true statements.
Answers:
• A member variable can be declared synchronized.
• A class can be declared transient.
• A class be declared synchronized.
• A method can be declared synchronized.
41. Which exception must a setter of a constrained JavaBean property throw to prevent the property value from changing?
Answers:
• PropertyVetoException
• IllegalArgumentException
• IllegalComponentStateException
• InvalidAttributeValueException
42. X.509 version 3 specifies which of the following?
Answers:
• A format and content for digital certificates.
• The IPSec standard.
• The Secure Socket Layer.
• The Data Encryption Standard.
• A file for digital certificates.
43. What will be the output when this code is compiled and run?
public class Test {

    public Test() {

        Bar b = new Bar();
        Bar b1 = new Bar();
        update(b);
        update(b1);
        b1 = b;
        update(b);
        update(b1);
    }

    private void update(Bar bar) {

        bar.x = 20;
        System.out.println(bar.x);
    }

    public static void main(String args[]) {

        new Test();
    }

    private class Bar {

        int x = 10;
    }
}
Answers:
• The code will fail to compile.
• 10 10 10 10
• 20 20 20 20
• 10 20 10 20
44. Which of the following methods can be used for reporting a warning on a Connection object, Statement object & ResultSet object?
Answers:
• getWarnings()
• getWarned()
• getWarning()
• getError()
• getErrors()
45. Which of the following are valid ways to define a thread in Java?
Answers:
• Create a subclass of java.lang.Thread class
• Create a class that implements java.lang.Runnable
• Define method run() in a class
• Define method call() in a class
46. JDBC is based on:
Answers:
• X/Open CLI (Call Level Interface)
• JDBC/Open CLI
• Java/Open CLI
• V/OPEN CLI
• V/CLOSE CLI
47. Which of the following statements regarding abstract classes are true?
Answers:
• All methods declared in an abstract class must be abstract.
• Any subclass (abstract or concrete class) of an abstract class must implement all the methods declared in the parent abstract class.
• Any concrete class must implement all the methods of the parent abstract class which are not implemented in the super hierarchy tree.
• The abstract class may have method implementation.
48. Which of the following is the name of the cookie used by Servlet Containers to maintain session information?
Answers:
• SESSIONID
• SERVLETID
• JSESSIONID
• CONTAINERID
49. Which method in the HttpServlet class corresponds to the HTTPPUT method?
Answers:
• put
• doPut
• httpPut
• putHttp
50. Which of the following illustrates correct synchronization syntax?
Answers:
• public synchronized void Process(void){}
• public void Process(){ synchronized(this){ } }
• public void synchronized Process(){}
• public synchronized void Process(){}
51. The transaction attribute of a bean is set to 'TX_REQUIRES_NEW.' What can be inferred about its behavior?
Answers:
• It initiates a new transaction only when the previous one is concluded.
• It initiates a new transaction without waiting for the previous one to conclude.
• It sends the request to the EJB container for initiating a new bean.
• The bean manages its own transaction.
52. How many objects are created in the given code?

Object x, y, z;
x = new Object();
y = new Object();
Answers:
• 0
• 1
• 2
• 3
53. How does the set collection deal with duplicate elements?
Answers:
• Duplicate values will cause an error at compile time.
• A set may contain elements that return duplicate values from a call to the equals method.
• An exception is thrown if you attempt to add an element with a duplicate value.
• The add method returns false if you attempt to add an element with a duplicate value.
54. 1 <libraryPrefix:handlerName parameterNAme="value">
2 <%=23*counter %>
3 <b>Congratulations!</b>

Which of the following is the correct way to complete the code snippet above?
Answers:
• </libraryPrefix:handlerName>
• </libraryPrefix:handlerName paremeterName="value">
• </handlerName>
• <libraryPrefix>
55. Which of the following transaction modes are supported by Enterprise Java Beans?
Answers:
• TX_NOT_SUPPORTED
• TX_BEAN_MANAGED
• TX_REQUIRED
• TX_MANDATORY
• All of the above
56. Which distributed object technology is most appropriate for systems that consist entirely of Java objects?
Answers:
• RMI
• CORBA
• DCOM
• COM
• JDBC
57. The following code was written to save a handle to an EJBObject named 'bookEJBObject' for an online book shop:

javax.ejb.Handle bookHandle = _____________;

ObjectOutputStream stream = new ObjectOutputStream(newFileOutputStream(fileName));
stream.writeObject(bookHandle);
stream.close();

Which of the following methods should be filled in the blank?
Answers:
• (Handle) bookEJBObject()
• bookEJBObject.getHandle()
• bookEJBObject.getEJBHandle()
• newHandleInstance()
58. Which sequence will be printed when the following program is run?

import java.util.*;

public class Test {

 public static void main(String str[]) {

  List l = new ArrayList();
  l.add(''1'');
  l.add(''2'');
  l.add(1,''3'');
  System.out.println(l);
 }
}
Answers:
• [1, 3, 2]
• [1, 3, 1]
• [1, 1, 3]
• [1, 1, 2]
• This code will generate an error.
59. Conventionally, which directory do servlet class files get placed on?
Answers:
• WEB-INF\servlets
• webapp\servlets
• WEB-INF\classes
• WEB-INF\
60. Which is a proper way to declare and throw exception of class XYException?
Answers:
• class XYException extends Exception {} ... throw new XYException();
• class XYException implements Exception {} ... throw new XYException();
• class XYException extends Exception {} ... throw new Exception(""XYException"");
• class XYException implements Exception {} ... throw new Exception(""XYException){};
61. Which of the following JDBC methods is used to retrieve large binary objects?
Answers:
• getBinaryStream()
• getText()
• getAsciiStream
• getString()
• getUniStream()
62. What is the output of the given program?

public class Test129 {
        public static void main(String[] args) {
                A a = new A2();
                B b = new B2();
                System.out.println(a.a + "" + b.b);
        }
}
class A { int a = 1; }
class A2 extends A { int a = 2; }
class B { public int b = 1; }
class B2 extends B { public int b = 2; }
Answers:
• 1
• 2
• 11

• 22
63. What exception is thrown by this code, if arr[j]>arr[j+1]:

public static  void main(String[] args) {
    int []arr={12,23,43,34,3,6,7,1,9,6};
        { 
              int temp;
              for (int i=0;i<arr.length;i++)
              { 
                for (int j=0;j<arr.length-i;j++ )
                {
                  if (arr[j]>arr[j+1])
                 { 
                     temp=arr[j];
                     arr[j+1]=arr[j];
                     arr[j+1]=temp;
                  }
                }
              }
            }
        for(int i=0; i<arr.length; i++)
         {
             System.out.print(arr[i] + " ");
         }
    }
Answers:
• NumberFormatException
• ArrayIndexOutOfBoundException
• IOException
64. Which of the following is a well-known HTTP port?
Answers:
• 21
• 25
• 8080
• 80
• 137
65. Which of these interfaces are used by implementations of models for JTable?
Answers:
• TableModel
• TableColumnModel
• TableSelectionModel
• ListModel
66. Which of the following require explicit try/catch exception handling by the programmer?
Answers:
• Accessing a method in another class
• Attempting to open a network socket
• Attempting to open a file
• Traversing each member of an array
67. What is the output of the given program?

public class Test89 {
        public static void main(String[] args) {
                T x = new T(""X"", null); x.start();
                T y = new T(""Y"", x);    y.start();
                T z = new T(""Z"", y);    z.start();
        }
}
class T extends Thread {
        private Thread predecessor;
        private String name;
        public T(String name, Thread predecessor) {
                this.predecessor = predecessor;
                this.name = name;
        }
        public void run() {
                try {
                        Thread.sleep((int)(Math.random()*89));
                        System.out.print(name);
                } catch (InterruptedException ie) {
                        ie.printStackTrace();
                }
        }
}
Answers:
• Always XYZ
• Always ZYX
• Any of the following: XYZ, XZY, YXZ, YZX, ZXY, ZYX
• Any of the following: XYZ, ZYX
68. Which of the following code snippets will take transform input string "2012/06/05"  to output string "05 - 06 - 2012"?
Answers:
• String dateString = "2012/06/05"; Date date = new SimpleDateFormat("yyyy/MM/dd").parse(dateString); SimpleDateFormat sdf = new SimpleDateFormat("dd - MM - yyyy"); System.out.println(sdf.format(date));
• String dateString = "2012/06/05"; Date date = new SimpleDateFormat("yyyy/MM/dd").format(dateString); SimpleDateFormat sdf = new SimpleDateFormat("dd - MM - yyyy"); System.out.println(sdf.parse(date));
• String dateString = "2012/06/05"; Date date = new SimpleDateFormat("dd - MM - yyyy").format(dateString); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); System.out.println(sdf.parse(date));
• String dateString = "2012/06/05"; Date date = new SimpleDateFormat("dd - MM - yyyy").parse(dateString); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); System.out.println(sdf.format(date));
69. Which statement is true regarding ServletContext Initialization Parameters in the deployment descriptor?
Answers:
• They are accessible by all servlets in a given web application.
• They are accessible by all servlets in a given session.
• They are accessible by all servlets in a given HTTP request.
• They are accessible by all servlets in a given container.
70. Which of the following statements is true of the HashMap class?
Answers:
• It stores information as key/value pairs.
• Elements are returned in the order they were added.
• It does not permit null keys.
• It does not permit null values.
71. Which distributed object technology is most appropriate for systems that consist of objects written in different languages and that execute on different operating system platforms?
Answers:
• RMI
• CORBA
• COBRA
• DCOM
• COM
72. Which of the following code snippets will generate five random numbers between 0 and 200?
Answers:
• Random r = new Random(); for (int i = 0; i < 5; i++) { System.out.println(r.nextInt(0,200)); }
• Random r = new Random(200); for (int i = 0; i < 5; i++) { System.out.println(r.nextInt()); }
• Random r = new Random(); for (int i = 0; i < 5; i++) { System.out.println(r.nextInt(200)); }
• Random r = new Random(200); for (int i = 0; i < 5; i++) { System.out.println(r.nextInt(0)); }
73. What will be the output when this code is compiled and run?

public class Test {

 public Test() {

  Bar b = new Bar();
  Bar b1 = new Bar();
  update(b);
  update(b1);
  b1 = b;
  update(b);
  update(b1);
 }

 private void update(Bar bar) {

  bar.x = 20;
  System.out.println(bar.x);
 }

 public static void main(String args[]) {

  new Test();
 }

 private class Bar {

  int x = 10;
 }
}
Answers:
• The code will fail to compile.
• 10 10 10 10
• 20 20 20 20
• 10 20 10 20
74. Which class contains a method to create a directory?
Answers:
• File
• DataOutput
• Directory
• FileDescriptor
• FileOutputStream
75. Which of the following is the correct syntax for suggesting that the JVM perform garbage collection?
Answers:
• System.setGarbageCollection();
• System.out.gc();
• System.gc();
• System.free();
76. Why can't a Graphics object be created using the following statement?

Graphics g = new Graphics();
Answers:
• The Graphics class is a final class.
• The Graphics class is an abstract class.
• The constructor of the Graphic class needs a color object to be passed as a parameter, e.g Graphics g = new Graphics(new Color());.
77. Select all correct statements:
Answers:
• Vector is synchronized, ArrayList is not synchronized
• Hashtable is synchronized, HashMap is not synchronized
• Vector is not synchronized, ArrayList is synchronized
• Hashtable is not synchronized, HashMap is synchronized
78. What is the output of the given program?

public class Test97 {
        public static void main(String[] args) {
                int[][] a = new int[2][2];
                System.out.println(a.length);
        }
}
Answers:
• 0
• 2
• 3
• 4
79. Which of the following is false?
Answers:
• A scrollable ResultSet can be created in JDBC 2.0 API.
• The cursor is moved forward using next().
• The cursor is moved backward using previous().
• A while loop can be used because next() & previous() methods return false beyond the resultset.
• A while loop can be used because next () & previous () methods return -1 beyond the resultset.
80. Consider the following code:

public class Jam {

    public void apple(int i, String s) {
    }

    //ABC

}

Choose possible valid code replacements of "//ABC" among the choices:
Answers:
• public void apple(String s, int i) {}
• public int apple(int i, String s) {}
• public void apple(int i, String mystring) {}
• public void Apple(int i, String s) {}
81. RMI allows remote communication between:
Answers:
• C++ and Java
• C and Java
• Pascal and Java
• Java and Java
• Java and TCP/IP
82. Which of the following interfaces makes it possible for Java to save an object to a file and turn it into a data stream?
Answers:
• java.io.Serialization
• java.net.Serializable
• java.net.Serialization
• java.io.Serializable
• java.net.io.Serializable
83. How many objects are created in the given code?

Object x, y, z;
x = new Object();
y = new Object()
Answers:
• 0
• 1
• 2
• 3
84. As part of the type erasure process, when compiling a class or interface that extends a parameterized class or implements a parameterized interface, the compiler may need to create a synthetic method, called a _________.
Answers:
• bridge method
• helper method
• stub method
• raw method
85. Consider the following code:

public static void main(String bicycle[])
{
        System.out.println(bicycle[0]);
}

What would be the result if "java TwoTyre one two" is entered in the command line?
Answers:
• one
• two
• TwoTyre
• None of the above
86. With regard to the destroy lifecycle method, identify the correct statements about its purpose or about how and when it is invoked.
Answers:
• It gives the servlet an opportunity to clean up resources.
• Like try-catch, it is called upon an exception.
• It is rarely used but can be called to remove a servlet from memory.
• It isn't called if the server crashes.
87. What is the term to describe a situation where two or more threads are blocked forever, waiting for each other?
Answers:
• deadlock
• starvation
• livelock
• liveness
88. What will be the output of the following code?
public class MyTest {

    public static void main(String[] args) {
        for (int i=0; i > 10; i+=2) {
            System.out.println(i);
        }
    }
}
Answers:
• Nothing will be printed.
• It will print the following output: 0 2 4 6 8
• Compile time error
• It will print the following output: 0 1 2 3 4 5 6 7 8 9

89. Which of the following cannot apply to constructors?
Answers:
• Name same as class name
• Void return type
• Can have parameters
• Overloading
90. Which of the following symbols are metacharacters supported by the java.util.regex API?
Answers:
• .
• \
• @

• #

• EJBActivation()