64 Java questions for any job interview

1. Which
of the following are valid definitions of an application’s main( ) method?
a) public static void main();
b) public static void main( String args );
c) public static void main( String args[] );
d) public static void main( Graphics g );
e) public static boolean main( String args[] );
2. If MyProg.java were compiled as an
application and then run from the command line as:
              java MyProg I like tests
what would be the value of args[ 1 ] inside
the main( ) method?
a) MyProg
b) "I"
c) "like"
d) 3
e) 4
f) null until a value is assigned

3. Which of the following are Java keywords?
a) array
b) boolean
c) Integer
d) protect
e) super
4. After the declaration:
char[] c = new char[100];
what is the value of c[50]?
a) 50
b) 49
c) ‘\u0000′
d) ‘\u0020′
e) " "
f) cannot be determined
g) always null until a value is
assigned
5. After the declaration:
int x;
the range of x is:
a) -231 to 231-1

b) -216 to 216 -
1
c) -232 to 232
d) -216 to 216
e) cannot be determined; it depends on
the machine
6. Which identifiers are valid?
a) _xpoints
b) r2d2
c) bBb$
d) set-flow
e) thisisCrazy
7. Represent the number 6 as a hexadecimal
literal.

8. Which of the following statements assigns "Hello Java" to the
String variable s?
a) String s = "Hello Java";
b) String s[] = "Hello Java";
c) new String s = "Hello Java";
d) String s = new String("Hello Java");
9. An integer, x has a binary value (using 1
byte) of 10011100. What is the binary value of z after these statements:
int y = 1 << 7;
int z = x & y;
a) 1000 0001
b) 1000 0000
c) 0000 0001
d) 1001 1101
e) 1001 1100
10. Which statements are accurate:
a) >>
performs signed shift while >>> performs an unsigned shift.
b) >>> performs a
signed shift while >> performs an unsigned shift.
c) << performs a
signed shift while <<< performs an insigned shift.
d) <<< performs a
signed shift while << performs an unsigned shift.
11. The statement …
String s = "Hello" +
"Java";

yields the same value for s as …
String s = "Hello";
String s2= "Java";
s.concat( s2 );
True
False
12. If you compile and execute an application
with the following code in its main() method:
String s = new String( "Computer" );
if( s == "Computer" )
System.out.println( "Equal A" );
if( s.equals( "Computer" ) )
System.out.println( "Equal B" );
a) It will not compile because the
String class does not support the = = operator.
b) It will compile and run, but
nothing is printed.
c) "Equal A" is the only
thing that is printed.
d) "Equal B" is the only
thing that is printed.
e) Both "Equal A" and
"Equal B" are printed.
13. Consider the two statements:
1. boolean passingScore = false && grade == 70;
2. boolean passingScore = false & grade == 70;
The expression
grade == 70
is evaluated:
a) in both 1 and 2
b) in neither 1 nor 2
c) in 1 but not 2
d) in 2 but not 1
e) invalid because false should be
FALSE
14. Given the variable declarations below:
byte myByte;
int myInt;
long myLong;
char myChar;
float myFloat;
double myDouble;
Which one of the following assignments would
need an explicit cast?
a) myInt
= myByte;

b) myInt
= myLong;

c) myByte
= 3;

d) myInt
= myChar;

e) myFloat
= myDouble;

f) myFloat
= 3;

g) myDouble
b) myInt
= myLong;

c) myByte
= 3;

d) myInt
= myChar;

e) myFloat
= myDouble;

f) myFloat
= 3;

g) myDouble
= 3.0;

15. Consider this class example:
class MyPoint 
{  void myMethod() 
   {  int x, y;
      x = 5; y = 3;
      System.out.print( " ( " + x + ", " + y + " ) " );
      switchCoords( x, y );
      System.out.print( " ( " + x + ", " + y + " ) " );
   }
   void switchCoords( int x, int y ) 
   {  int temp;
      temp = x;
      x = y;
      y = temp;
      System.out.print( " ( " + x + ", " + y + " ) " );
   }
}
What is printed to standard output if myMethod()
is executed?
a) (5, 3) (5, 3) (5, 3)
b) (5, 3) (3, 5) (3, 5)
c) (5, 3) (3, 5) (5, 3)
16. To declare an array of 31 floating
point numbers representing snowfall for each day of March in Gnome, Alaska,
which declarations would be valid?
a) double
snow[] = new double[31];

b) double
snow[31] = new array[31];

c) double
snow[31] = new array;

d) double[]
snow = new double[31];

17. If arr[] contains only positive integer values, what does this
function do?
public int guessWhat( int arr[] )
{  int x= 0;
   for( int i = 0; i < arr.length; i++ )
      x = x < arr[i] ? arr[i] : x;
   return x;
}
a) Returns the index of the highest
element in the array
b) Returns true/false if there
are any elements that repeat in the array
c) Returns how many even numbers are
in the array
d) Returns the highest element in the
array
e) Returns the number of question
marks in the array
18. Consider the code below:
arr[0] = new int[4];
arr[1] = new int[3];
arr[2] = new int[2];
arr[3] = new int[1];
for( int n = 0; n < 4; n++ )
System.out.println( /* what goes here? */ );
Which statement below, when inserted as the
body of the for loop, would print the number of values in each row?
a) arr[n].length();
b) arr.size;
c) arr.size-1;
d) arr[n][size];
e) arr[n].length;
19. If size = 4, triArraylooks like:
 
int[][] makeArray( int size) 
{  int[][] triArray = new int[size] [];
   int val=1;
   for( int i = 0; i < triArray.length; i++ ) 
   {  triArray[i] = new int[i+1];
          for( int j=0; j < triArray[i].length; j++ )
      {  triArray[i][j] = val++;
      }
   }
   return triArray;
}
 
a)
1 2 3 4
5 6 7
8 9
10
b)
1 4 9 16
c)
1 2 3 4
d)
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
e)
1
2 3
4 5 6
7 8 9 10
20. Which of the following are legal
declarations of a two-dimensional array of integers?
a) int[5][5]a = new int[][];
b) int a = new int[5,5];
c) int[]a[] = new int[5][5];
d) int[][]a = new[5]int[5];
21. Which of the following are correct methods
for initializing the array "dayhigh" with 7 values?
a) int dayhigh = { 24, 23, 24, 25, 25, 23, 21 };
b) int dayhigh[] = { 24, 23, 24, 25, 25, 23, 21 };
c) int[] dayhigh = { 24, 23, 24, 25, 25, 23, 21 };
d) int dayhigh [] = new int[24, 23, 24, 25, 25, 23, 21];
e) int dayhigh = new[24, 23, 24, 25, 25, 23, 21];
22. If you want subclasses to access, but not to
override a superclass member method, what keyword should precede the name of
the superclass method?

23. If you want a member variable to not be accessible outside the current
class at all, what keyword should precede the name of the variable when
declaring it?

24. Consider the code below:
 
public static void main( String args[] )
{  int a = 5;
System.out.println( cube( a ) );
}
int cube( int theNum )
{
return theNum * theNum * theNum;
}
 
What will happen when you attempt to compile and run this code?
a) It will not compile because cube is
already defined in the java.lang.Math class.
b) It will not compile because cube is
not static.
c) It will compile, but throw an
arithmetic exception.
d) It will run perfectly and print
"125" to standard output.
25. Given the variables defined below:
int one = 1;
int two = 2;
char initial = ‘2′;
boolean flag = true;
Which of the following are valid?
a) if(
one ){}

b) if(
one = two ){}

c) if(
one == two ){}

d) if(
flag ){}

e) switch(
one ){}

f) switch(
flag ){}

g) switch(
initial ){}

26. If val = 1 in the code below:
 
switch( val ) 
{  case 1: System.out.print( "P" );
   case 2: 
   case 3: System.out.print( "Q" );
      break;
   case 4: System.out.print( "R" );
   default: System.out.print( "S" );
}
 
Which values would be printed?
a) P
b) Q
c) R
d) S
27. Assume that val has been defined as an int for the
code below:
 
if( val > 4 ) 
{  System.out.println( "Test A" );
}
else if( val > 9 ) 
{  System.out.println( "Test B" );
}
else System.out.println( "Test C" );
 
Which values of val will
result in "Test C" being printed:
a) val < 0
b) val between 0 and 4
c) val between 4 and 9
d) val > 9
e) val = 0
f) no values for val will be satisfactory
28. What exception might a wait()
method throw?

29. For the code:
 
m = 0;
while( m++ < 2 )
   System.out.println( m );
 
Which of the following are printed to
standard output?
a) 0
b) 1
c) 2
d) 3
e) Nothing and an exception
is thrown
30. Consider the code fragment below:
 
outer: for( int i = 1; i <3; i++ )
   {  inner: for( j = 1; j < 3; j++ )
      {  if( j==2 )
            continue outer;
            System.out.println( "i = " +i ", j = " + j );
      }
   }    
 
Which of the following would be printed to standard output?
a) i = 1, j = 1
b) i = 1, j = 2
c) i = 1, j = 3
d) i = 2, j = 1
e) i = 2, j = 2
f) i = 2, j = 3
g) i = 3, j = 1
h) i = 3, j = 2
31. Consider the code below:
void myMethod() 
{  try 
   {  
      fragile();
   }
   catch( NullPointerException npex ) 
   {  
      System.out.println( "NullPointerException thrown " );
   }
   catch( Exception ex ) 
      {  
         System.out.println( "Exception thrown " );
      }
   finally 
   {  
      System.out.println( "Done with exceptions " ); 
   }
   System.out.println( "myMethod is done" );
}
What is printed to standard output if fragile()
throws an IllegalArgumentException?
a) "NullPointerException thrown"
b) "Exception thrown"
c) "Done with exceptions"
d) "myMethod is done"
e) Nothing is printed
32. Consider the following code sample:
class Tree{}
class Pine extends Tree{}
class Oak extends Tree{}
public class Forest 
{  public static void main( String[] args ) 
   {  Tree tree = new Pine();
 
      if( tree instanceof Pine )
      System.out.println( "Pine" );
 
      if( tree instanceof Tree )
      System.out.println( "Tree" );
 
      if( tree instanceof Oak )
      System.out.println( "Oak" );
 
      else System.out.println( "Oops" );
   }
}
Select all choices that will be printed:
a) Pine
b) Tree
c) Forest
d) Oops
e) (nothing printed)
33. Consider the classes defined below:
import java.io.*;
class Super 
{
        int methodOne( int a, long b ) throws IOException 
        { // code that performs some calculations
    }
        float methodTwo( char a, int b )
        { // code that performs other calculations
    }
}
public class Sub extends Super
{
 
}
Which of the following are legal method
declarations to add to the class Sub? Assume that each method is the only one being added.
a) public static void main( String args[] ){}
b) float methodTwo(){}
c) long methodOne( int c, long d ){}
d) int methodOne( int c, long d ) throws
ArithmeticException{}

e) int methodOne( int c, long d ) throws
FileNotFoundException{}

34. Assume that Sub1 and Sub2 are both
subclasses of class Super.
Given the declarations:
Super super = new Super();
Sub1 sub1 = new Sub1();
Sub2 sub2 = new Sub2();
Which statement best describes the result of
attempting to compile and execute the following statement:
super = sub1;
a) Compiles and definitely legal at
runtime
b) Does not compile
c) Compiles and may be illegal at
runtime
35. For the following code:
class Super 
{  int index = 5;
   public void printVal() 
      {  System.out.println( "Super" );
      }
}
class Sub extends Super
{  int index = 2;
   public void printVal() 
   {  System.out.println( "Sub" );
   }
}
public class Runner 
{  public static void main( String argv[] ) 
   {  Super sup = new Sub();
      System.out.print( sup.index + "," );
      sup.printVal();
   }
}
What will be printed to standard output?
a) The code will not compile.
b) The code compiles and "5,
Super" is printed to standard output.
c) The code compiles and "5,
Sub" is printed to standard output.
d) The code compiles and "2,
Super" is printed to standard output.
e) The code compiles and "2,
Sub" is printed to standard output.
f) The code compiles, but throws an
exception.
36. How many objects are eligible for garbage
collection once execution has reached the line labeled Line A?
String name;
String newName = "Nick";
newName = "Jason";
name = "Frieda";
String newestName = name;
name = null;
//Line A
a) 0
b) 1
c) 2
d) 3
e) 4
37. Which of the following statements about
Java’s garbage collection are true?
a) The garbage
collector can be invoked explicitly using a Runtime object.
b) The finalize method is
always called before an object is garbage collected.
c) Any class that includes
a finalize method should invoke its superclass’ finalize method.
d) Garbage collection
behavior is very predictable.
38. What line of code would begin execution of a
thread named myThread?

39. Which methods are required to implement the interface Runnable.
a) wait()
b) run()
c) stop()
d) update()
e) resume()
40. What class defines the wait() method?

41. For what reasons might a thread stop execution?
a) A thread with higher priority
began execution.
b) The thread’s wait() method was invoked.
c) The thread invoked its yield() method.
d) The thread’s pause() method was invoked.
e) The thread’s sleep() method was invoked.
42. Which method below can change a String object, s ?
a) equals( s )
b) substring(
s )

c) concat(
s )

d) toUpperCase(
s )

e) none of the above will change s
43. If s1 is declared as:
String s1 =
"phenobarbital";

What will be the value of s2 after
the following line of code:
String s2 = s1.substring( 3, 5 );
  1. a) null
    b) "eno"
    c) "enoba"
    d) "no" 44. What method(s)
    from the java.lang.Math class might method() be if the statement
    method( -4.4 )
    == -4;

    is true.
    a)
    round()
    b) min()
    c) trunc()
    d) abs()
    e) floor()
    f) ceil()
    45. Which methods
    does java.lang.Math include for trigonometric computations?
    a)
    sin()
    b) cos()
    c) tan()
    d) aSin()
    e) aCos()
    f) aTan()
    g) toDegree()
    46. This piece of
    code:
    TextArea ta =
    new TextArea( 10, 3 );

    Produces (select
    all correct statements):
    a)
    a TextArea with 10 rows and up to 3 columns
    b) a TextArea with a
    variable number of columns not less than 10 and 3 rows
    c) a TextArea that may not
    contain more than 30 characters
    d) a TextArea that can be
    edited
    47. In the list below, which subclass(es) of Component cannot be directly
    instantiated:
    a)
    Panel
    b) Dialog
    c) Container
    d) Frame
    48. Of the five Component methods listed below, only one is also a method
    of the class MenuItem. Which one?
    a)
    setVisible(
    boolean b )

    b) setEnabled( boolean b )
    c) getSize()
    d) setForeground( Color c )
    e) setBackground( Color c )
    49. If a font with
    variable width is used to construct the string text for a column, the
    initial size of the column is:
    a)
    determined by the number of characters in the string, multiplied by the
    width of a character in this font
    b) determined by the number of
    characters in the string, multiplied by the average width of a character
    in this font
    c) exclusively determined by the
    number of characters in the string
    d) undetermined
    50. Which of the
    following methods from the java.awt.Graphics class would be used to draw the outline of a
    rectangle with a single method call?
    a)
    fillRect()
    b)
    drawRect()
    c) fillPolygon()
    d) drawPolygon()
    e) drawLine()

    51. The Container methods add( Component comp ) and add( String name, Component comp) will throw an IllegalArgumentException
    if comp is a:

    a) button
    b) list
    c) window
    d) textarea
    e) container that contains
    this container
    52. Of the following AWT classes, which one(s) are responsible for implementing the components layout?

    a)
    LayoutManager
    b) GridBagLayout
    c) ActionListener
    d) WindowAdapter
    e) FlowLayout
    53. A component that should resize vertically but not horizontally should
    be placed in a:
    a)
    BorderLayout in the North or South location
    b) FlowLayout as the first
    component
    c) BorderLayout in the
    East or West location
    d) BorderLayout in the
    Center location
    e) GridLayout
    54. What type of object is the parameter for all methods of the
    MouseListener interface?

    55. Which of the following statements about event handling in JDK 1.1 and
    later are true?
    a)
    A class can implement multiple listener interfaces
    b) If a class implements a listener
    interface, it only has to overload the methods it uses
    c) All of the MouseMotionAdapter class
    methods have a void return type.
    56. Which of the
    following describe the sequence of method calls that result in a component
    being redrawn?
    a)
    invoke paint() directly
    b) invoke update which
    calls paint()
    c) invoke repaint() which invokes update(),
    which in turn invokes paint()
    d) invoke repaint() which invokes paint directly
    57. Which of these is a correct fragment within the
    web-app element of deployment descriptor.
    Select the two correct
    answer.

    1. 404
      /error.jsp

    2. mypackage.MyException
      404
      /error.jsp
    3. mypackage.MyException
      404

    4. mypackage.MyException
      /error.jsp
58. A
bean with a property color is loaded using the following statement

id="fruit" class="Fruit"/>
Which of the following statements may be used to set the of color
property of the bean. Select the one correct answer.

1.
id="fruit" property="color" value="white"/>

2.
name="fruit" property="color" value="white"/>

3.   
name="fruit" property="color" value="white"/>

4.   
name="fruit" property="color" value="white">

5.   
name="fruit" property="color" value="white"/>

6.    

property="color" value="white">

59. What gets printed when the following JSP code is
invoked in a browser. Select the one correct
answer.
<%=
if(Math.random() < 0.5){ %>
  hello
<%=
} else { %>
  hi
<%=
} %>
a.     
The browser will print either hello or
hi based upon the return value of random.
b.    
The string hello will always get
printed.
c.     
The string hi will always get printed.
d.    
The JSP file will not compile.
60. Given the following web application deployment descriptor:
MyServlet
...


myServlet
*.jsp
Which statements are true?

  • 1) servlet-mapping element should be inside servlet element

  • 2) url-pattern can’t be defined that way.

  • 3) if you make the http call:
    href="http://host/servlet/Hello.do">http://host/Hello.jsp
    the servlet container will execute MyServlet.

  • 4) It would work with any extension excepting jsp,html,htm 61.Name the class that includes the getSession method that is used to get the HttpSession object.
      1. HttpServletRequest
      2. HttpServletResponse
      3. SessionContext
      4. SessionConfig
    62. What will be the result of running the following jsp
    file taking into account that the Web server has just been started and this is
    the first page loaded by the server?


    <%=
    request.getSession(false).getId() %>

    1)It won’t
    compile
    2)It will
    print the session id.
    3)It will produce a NullPointerException as the
    getSession(false) method’s call returns null, cause no session had been
    created.
    4)It will
    produce an empty page.
    63. The
    page directive is used to convey information about the page to JSP container.
    Which of these are legal syntax of page directive. Select the two correct
    statement

      1. <% page info="test page" %>
      2. <%@ page info="test page"
        session="false"%>
      3. <%@ page session="true" %>
      4. <%@ page
        isErrorPage="errorPage.jsp" %>
      5. <%@ page isThreadSafe=true %>
    64. Which
    of the following are methods of the Cookie Class?

    1) setComment
    2) getVersion
    3) setMaxAge
    4) getSecure