Другой вопрос из той же домашней работы:равно() и хэш-код() в Java
//attributes:
public int identifikace;
public String druh;
public int vek;
public Majitel majitel;
//constructor:
public Zvire(int identifikace, String druh, int vek, Majitel majitel){
this.identifikace = identifikace;
this.druh = druh;
this.vek = vek;
this.majitel = majitel;
Некоторые простые добытчиками и т.д. Теперь то, что я должен делать: «В классе Zvire, добавить методы Equals() и хэш-код() реализованы так, что два Zvire такие же, если они имеют одинаковый атрибут identifikace. " (не идеальный перевод, но вы, вероятно, получите смысл)
Я бы, вероятно, смог это выяснить, но я начинаю торопиться. Может ли кто-нибудь пропустить это очень просто?
спасибо!
Примечание: если вы хотите, чтобы получить хэш-код из атрибута, этот атрибут должен быть окончательным или, по крайней мере, логически неизменяемый (т. е. вы никогда не устанавливаете его, и вы никому не разрешаете его устанавливать). Публичные атрибуты могут быть изменены в любом месте, и это приведет к разрыву структур данных на основе хэшей, содержащих экземпляр. –
В этом простом примере это не проблема, но: Начните давать переменные английским именам. Это облегчает другим людям читать и понимать ваш код! –
Если мой ответ ниже достаточно хорош для вас, не стесняйтесь отмечать как лучший ответ, thx заранее –