Re[4]: Изменение hashCode и equals методов в runtime-ме
От: ЕщеНеПридумал  
Дата: 27.07.10 16:47
Оценка:
Здравствуйте, GarryIV, Вы писали:

GIV>Здравствуйте, ЕщеНеПридумал, Вы писали:


ЕНП>>Здравствуйте, ., Вы писали:


.>>>On 27/07/10 15:44, ЕщеНеПридумал wrote:

>>>> Изменить или написать свою имплементацию коллекций где для этих методов
>>>> будет предусмотрен интерфейс стратегий как например для сортировки —
>>>> Comparator.

ЕНП>>Чем было бы плохо иметь следующую конструкцию на ровне с Comparator:


ЕНП>>SortedList sortedList = new SortedList( myComparator );


ЕНП>>использовать также


ЕНП>>Map sortedList = new HashMap( myHashingStrategy, myEqualizerStrategy ); // на оригинальность и правильность названия не претендую


GIV>Тем что в java это запрещено см. доки к интерфейсам мапа\сета.


Если ко всем правилам по реализации equals и hashCode добавить что должна использоваться одна и таже стратегия то проблем не вижу.
Причем стратегия задается на уровне коллекции а не объекта.
Ее можно разрешить задавать только при создании коллекции и не позволять менять у уже созданной.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.