Hi, well i am unable to understand that why it is mandatory
to have same hashcode, if two objects are same?
Thanks in advance.
Answer Posted / rajshekaran pillai
As the JVM assigns the hashcode to an object value and not
the reference the hashcode for the same object will be same.
the equals() method of the object class uses this hashcode
to evaluate if the objects have same value. therefore
Object o1 = new String("ABC");
Object o2 = "ABC";
/**
* will have the same hashcode
* therefore when we do..
*/
if(o1 == o2){
System.out.println("The object reference is same");
}else if(o1.equals(o2)){
System.out.println("The object has same value");
}
/**
* The output is
* The object has same value
*/
| Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
What is a numeric string?
Can abstract class have private constructor?
Explain the difference between abstraction and encapsulation.
How will you calculate the depth of a binary tree if the tree contains 15 nodes?
What is a package in java? List down various advantages of packages.
What is the difference between variable & constant?
Which sorting algorithm is in place?
what do you mean by classloader?
How listener identify that the event came from a particular object?
Difference between comparator and comparable in java?
How are destructors defined in java?
Why do you canvas?
What are singleton services?
Why do we override tostring method in java?
What is the difference between conversation & casting?