task 1004 На печать было выведено два объекта. Поскольку не был переопределен метод hashCode, map оперировал рализацией этого метода в классе Object, a следовательно как и в первом примере, значения данной функции были разные. Поскольку первично проверяется равенство именно значений функции hashCode (а у нас они разные), до вызова методов equals так и не дошло. Т.е. метод put в итоге отработал точно также как и в первом примере. Поэтому существует требование, что равные объекты (по equals) должны иметь одинаковые хэш-коды (обратное не обязательно).
task 1004
На печать было выведено два объекта.
Поскольку не был переопределен метод hashCode, map оперировал рализацией этого метода в классе Object, a следовательно как и в первом примере, значения данной функции были разные.
Поскольку первично проверяется равенство именно значений функции hashCode (а у нас они разные), до вызова методов equals так и не дошло.
Т.е. метод put в итоге отработал точно также как и в первом примере. Поэтому существует требование, что равные объекты (по equals) должны иметь одинаковые хэш-коды (обратное не обязательно).

eturka/eturka