У меня есть Set
объектов, и я не хочу позволять хранить там более одного экземпляра любого класса. Какое решение лучше:Набор для отдельных экземпляров классов
- проверить, есть ли экземпляр данного класса в наборе (не кажется эффективным)
- реализации
hashCode
вернуться постоянны иequals
вернутьo != null && o.getClass() == getClass()
- макияжа собственная реализация
Set
(почти как первый вариант) - что-нибудь еще? может быть, уже есть такой набор?
Я не уверен, что ваш второй вариант будет работать. Разве вам не нужно было бы реализовать hashCode и равным для каждого отдельного класса в иерархии класса java. Или есть только определенные классы, которые вы хотите сохранить в своем наборе? –