Sail E0 Webinar
Question


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());
}
Options:
A .  42
B .  Runtime Exception
C .  Compile Error at line 2
D .  Compile Error at line 5
Answer: Option A

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()



Was this answer helpful ?
Next Question

Submit Solution

Your email address will not be published. Required fields are marked *

Latest Videos

Latest Test Papers