|
Модераторы: LSD, AntonSaburov |
|
Ares4322 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 339 Регистрация: 25.9.2007 Где: Россия, Москва Репутация: 1 Всего: 3 |
Доброго времени суток!
Такая проблема. Есть иерархия классов-сущностей. То есть основное их назначение - хранить состояние. Необходимо реализовать для них equals() и hashCode(). Вопрос: при реализации equals() для дочерних классов из этой иерархии, нужно ли вызывать equals родительского класса? |
|||
|
||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15708 Регистрация: 24.3.2004 Репутация: 209 Всего: 537 |
Сильно зависит от того, как должны сравниваться наследники. Пусть B наследуется от A. Могут ли быть ситуации в которых B.equals(A) и A.equals(B)?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Ares4322 |
|
||||
Опытный Профиль Группа: Участник Сообщений: 339 Регистрация: 25.9.2007 Где: Россия, Москва Репутация: 1 Всего: 3 |
Вопрос не в этом.
Класс Parent
Класс Child
|
||||
|
|||||
LSD |
|
|||
Leprechaun Software Developer Профиль Группа: Модератор Сообщений: 15708 Регистрация: 24.3.2004 Репутация: 209 Всего: 537 |
Именно в этом! Если B.equals(A) и A.equals(B) всегда false, то стоит вызывать (это самый простой способ проверить все поля базового класса). Иначе - нет. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
powerOn |
|
|||
software saboteur Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 47 Всего: 159 |
Рекомендую для написания equals и hashCode использовать commons-lang: http://commons.apache.org/lang/api-2.6/org...alsBuilder.html
|
|||
|
||||
Ares4322 |
|
|||
Опытный Профиль Группа: Участник Сообщений: 339 Регистрация: 25.9.2007 Где: Россия, Москва Репутация: 1 Всего: 3 |
Спасибо, все понял.
|
|||
|
||||
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |