Finding The Output

Question 6 :

What will be the output of the program?

public class Test 
{ 
    private static float[] f = new float[2]; 
    public static void main (String[] args) 
    {
        System.out.println("f[0] = " + f[0]); 
    } 
}


A). f[0] = 0
B). f[0] = 0.0
C). Compile Error
D). Runtime Exception
Answer : Option B

Explanation :

The choices are between Option A and B, what this question is really testing is your knowledge of default values of an initialized array. This is an array type float i.e. it is a type that uses decimal point numbers therefore its initial value will be 0.0 and not 0


Question 7 :

What will be the output of the program?

import java.util.*; 
class H 
{
    public static void main (String[] args) 
    { 
        Object x = new Vector().elements(); 
        System.out.print((x instanceof Enumeration)+","); 
        System.out.print((x instanceof Iterator)+","); 
        System.out.print(x instanceof ListIterator); 
    } 
}


A). Prints: false,false,false
B). Prints: false,false,true
C). Prints: false,true,false
D). Prints: true,false,false
Answer : Option D

Explanation :

The Vector.elements method returns an Enumeration over the elements of the vector. Vector implements the List interface and extends AbstractList so it is also possible to get an Iterator over a Vector by invoking the iterator or listIterator method.


Question 8 :

What will be the output of the program?

TreeSet map = new TreeSet();
map.add("one");
map.add("two");
map.add("three");
map.add("four");
map.add("one");
Iterator it = map.iterator();
while (it.hasNext() ) 
{
    System.out.print( it.next() + " " );
}


A). one two three four
B). four three two one
C). four one three two
D). one two three four one
Answer : Option C

Explanation :

TreeSet assures no duplicate entries; also, when it is accessed it will return elements in natural order, which typically means alphabetical.


Question 9 :

What will be the output of the program?

public static void main(String[] args) 
{
    Object obj = new Object() 
    {
        public int hashCode() 
        {
            return 42;
        }
    }; 
    System.out.println(obj.hashCode()); 
}


A). 42
B). Runtime Exception
C). Compile Error at line 2
D). Compile Error at line 5
Answer : Option A

Explanation :

This code is an example of an anonymous inner class. They can be declared to extend another class or implement a single interface. Since they have no name you can not use the "new" keyword on them.

In this case the annoynous class is extending the Object class. Within the {} you place the methods you want for that class. After this class has been declared its methods can be used by that object in the usual way e.g. objectname.annoymousClassMethod()