В частности, я работаю с Java, но даже если это невозможно в Java, мне интересно знать, возможно ли это вообще на каком-либо языке.
У меня есть набор объектов Exam в классе Student, представляющий экзамены, которые сдал студент, и для каждого экзамена в наборе я хочу отслеживать ответы обоих учащихся на вопросы экзамена, и я хочу отслеживать оценки студента на каждом экзамене.
Самый простой способ добиться этого - просто иметь две карты для каждого отношения. Однако я хочу быть в состоянии гарантировать, что любой ключ, который существует на карте, существует для всех карт, и удаление ключа с любой из карт должно удалить его со всех карт. Также кажется, что было бы эффективнее иметь один общий набор ключей, когда все ключи каждой карты действительно представляют одно и то же: набор экзаменов, которые сдал студент.
Так можно ли сделать несколько разных карт зависимыми от одного и того же набора ключей? И независимо от того, возможно ли это, есть ли причина, по которой это будет просто плохой идеей?
Спасибо! Я ценю любые советы:)
Edit: для записи, я имею в виду только создание экземпляра новой карты, а затем итерацию по набору ключей исходной карты, добавление каждого ключа к новой карте, но я не думаю, что это будет делать то, что я хочу. Я хотел бы создать новый набор ключей, который просто содержит все ссылки на оригинальный набор ключей. Мои две карты фактически не будут зависеть от одного и того же набора ключей, поэтому изменение одной из них не повлияет на другую, как следует.