У меня есть класс с некоторыми первичными полями, которые являются обязательными и обязательными для всех его конструкторов, а затем с другими вторичными полями, которые могут быть по умолчанию равны пустым значениям, если они не инициализируются. Комбинация первичных полей - это то, что идентифицирует каждый экземпляр класса как уникальный и отдельный объект, так что другой экземпляр с такими же первичными полями может считаться дубликатом, даже если у него есть разные вторичные поля .
Проверка на наличие дублирующихся экземпляров необходима для хранения объектов в структуре, подобной списку, которая не допускает дублирование, и выполняется путем переопределения equals()
(которое, например, используется ArrayList.contains()
) для сделать так, чтобы он смотрел только на первичные поля, полностью игнорируя все вторичные.
Это правильный подход?