Сонарная проблема: "Overide метод" равно "в этом классе - PullRequest
0 голосов
/ 21 марта 2019

Я чистил код системы, в которой я работаю, убирал некоторые проблемы с инструментом Sonar, и наткнулся на следующее сообщение:

Переопределите метод equals в этом классе

Я провел некоторое исследование, но ничего не ответило на «почему» этой заметки

Мы используем родительский класс с EqualsBuilder, который обеспечивает EqualsBuilder.reflectionEquals, поэтому исправление заключается в том, чтобы просто объявить метод перезаписанным путем передачи метода equals родительского класса

     @Override
     public boolean equals (Object o) {
         return super.equals (o);
     }

гарантированно я также перезаписываю метод hashCode, но таким же образом передаю ответственность родительскому классу (тот же случай для mirrorHashCode HashCodeBuilder.reflectionHashCode)

     @Override
     public int hashCode () {
         return super.hashCode ();
     }

Но все же мой вопрос остается: почему я должен переопределять этот метод, если он может быть достигнут в наследовании?

Заранее спасибо

...