Я недавно поигрался с мягкими, слабыми и фантомными ссылочными типами в Java и задавался вопросом, есть ли какие-то способы их использования, с которыми я не сталкивался.Я использовал их в прошлом для разных вещей, и они всегда подпадали под категорию следующего:
- Использование фантомных ссылок вместо финализаторов - я предпочитаю это, так как есть 0 шансов навоскресение мертвого объекта
- Использование слабых ссылок в хэш-карте для хранения отображения объекта =>, где отображение должно быть только в том случае, если объект существует в другом месте (полезно, когда нужно добавить дополнительную информацию к объекту внапример, библиотека, источник которой не может быть изменен)
- Использование мягких ссылок для кэширования (работает намного лучше, чем слабые ссылки, потому что JVM хранит их гораздо дольше и отпускает, только если считает, что это необходимо.)
Тем не менее, там есть только 3 варианта использования, и, я полагаю, есть еще много вещей, которые могут быть полезны для которых я никогда не сталкивался.Все предложения приветствуются!