Pull to refresh

Comments 4

Мы знаем, что обе функции hashCode() и equals() в классах-наследниках всегда надо переопределять

Прямо таки всегда?? Однако сами же в своем AndroidLogCallDetector этого не сделали…
Да, я этот пункт что-то тоже не понял. Зачем всегда?
Здесь, конечно, не имелось ввиду что для любого «сферического» класса надо определять эти функции. Но если вы собрались переопределить например equals(), то в большинстве случаев надо переопределить и hashCode(). Вот, например, проверки которые умеет делать findbugs -http://findbugs.sourceforge.net/bugDescriptions.html#HE_EQUALS_NO_HASHCODE
Но если вы собрались переопределить например equals(), то в большинстве случаев надо переопределить и hashCode()

Как раз это никто не оспаривает, но в статье так написано, что имелось ввиду как раз что для любого «сферического» класса надо определять эти функции
Sign up to leave a comment.