Why do we need to override equals() and hascode() method of object class?
Answer Posted / javamasque
As per equality contract of Java if two objects are equal then they should return equal integer, means if obj1.equals(obj2) then obj1.hashCode() == obj2.hashCode();
As we override equals method we compares equality on value of each property inside 1st object with 2nd object, as it finds all properties are equal then returns true else false.
As we override hascode method we generate a unique integer by multiplying with prime number. If we multiply with prime number then there is most possibility to get unique integer. The prime number 31 is mostly used as the hascode method is override.
| Is This Answer Correct ? | 2 Yes | 0 No |
Post New Answer View All Answers
If A Class Is Declared Without Any Access Modifiers, Where May The Class Be Accessed?
Define how does a try statement determine which catch clause should be used to handle an exception?
What is the main difference between java platform and other platforms?
How many java versions are there?
What is string in java? String is a data type?
What do you mean by local class?
Can we have two main methods in a java class?
Can we call the run() method instead of start()?
What does percent mean in java?
What is a return in java?
What does i ++ mean in Java?
Is java a compiler?
What is mysql driver class name?
What is java oops?
what is meant by abstract class?