Program to demonstrate how to override and implement the hashCode and equals method in Java.  
Output of the program :
  
Video tutorial to demonstrate how to override hashcode method in Java.
Video tutorial to demonstrate how to override equals method in Java.
import java.util.Date;
// 1. Create Employee class
public class Employee {
 // 2. Define three properties of Employee
 // as age, name and dateOfBirth.
 private int age;
 private String name;
 private Date dateOfBirth;
 // 3. Create a Employee constructor setting three properties.
 public Employee(int age, String name, Date dateOfBirth){
  this.age = age;
  this.name = name;
  this.dateOfBirth = dateOfBirth;
 }
 // 4. Overriding equals method into the Employee class.
 @Override
 public boolean equals(Object object) {
  boolean isEquals = false;
  if(this == object){ 
   isEquals = true;
  }
  if(null == object || this.getClass() != object.getClass()){ 
   isEquals = false;
  }
  Employee employee = (Employee) object;
  if((this.age == employee.age) &&  
    (null != this.name && this.name.equals(employee.name)) &&
    (null != this.dateOfBirth && this.dateOfBirth.equals(employee.dateOfBirth))){
   isEquals = true;
  }
  return isEquals;
 }
 // 5. Overriding hashCode() mehtod in the Employee class.
 @Override
 public int hashCode() {
  int hashCode = 10;
  hashCode = (31 * hashCode) + age;
  hashCode = (31 * hashCode) + (name != null ? name.hashCode() : 0);
  hashCode = (31 * hashCode) + (dateOfBirth != null ? dateOfBirth.hashCode() : 0);
  return hashCode;
 }
 public static void main(String[] args) {
  Employee employee1 = new Employee(30, "Dinesh", new Date(1987, 12, 1));
  Employee employee2 = new Employee(31, "Jimmy", new Date(1989, 11, 2));
  Employee employee3 = new Employee(30, "Dinesh", new Date(1987, 12, 1));
  System.out.println("employee1.hashCode() = " + employee1.hashCode());
  System.out.println("employee2.hashCode() = " + employee2.hashCode());
  System.out.println("employee1.equals(employee2) = " + employee1.equals(employee2));
  System.out.println("employee1.hashCode() = " + employee1.hashCode());
  System.out.println("employee3.hashCode() = " + employee3.hashCode());
  System.out.println("employee1.equals(employee3) = " + employee1.equals(employee3));
  System.out.println("employee2.hashCode() = " + employee2.hashCode());
  System.out.println("employee3.hashCode() = " + employee3.hashCode());
  System.out.println("employee2.equals(employee3) = " + employee2.equals(employee3));
 }
}
Output of the program :
Video tutorial to demonstrate how to override hashcode method in Java.
Video tutorial to demonstrate how to override equals method in Java.
