@Override
     public boolean equals(Object obj) {
         if (obj == this) return true;
         if (!(obj instanceof Bora)) return false;
         Bora bor = (Bora) obj;
         return bor.a == a && bor.b != null && b.equals(bor.b) || bor.a == a && b == bor.b ;
     }

 }
    public static void main(String[] args) {
        Bora bora = new Bora(1, "a");
        Bora bora2 = new Bora(1, "a");

        System.out.println(bora.hashCode());
        System.out.println(bora2.hashCode());

        System.out.println(bora.equals(bora2));
    }
}
вывод 1967205423 42121758 true Почему хэш коды разные а но показыет true?