Встречается на 2% собеседований по Java
Какие знаешь способы устранить увеличение кэша
В Java можно использовать SoftReference или WeakReference для объектов, которые могут быть удалены GC при нехватке памяти. Также эффективно применение LinkedHashMap с переопределением removeEldestEntry() для ограничения размера.
Пример с LinkedHashMap:
java
Map<K, V> cache = new LinkedHashMap<K, V>(16, 0.75f, true) {
@Override
protected boolean removeEldestEntry(Map.Entry<K, V> eldest) {
return size() > MAX_SIZE;
}
};Для сложных сценариев подходят библиотеки (Caffeine, Ehcache), поддерживающие политики вытеснения (LRU, LFU, TTL).
Дополнительно:
- Очистка по таймеру (
ScheduledExecutorService) - Использование
PhantomReferenceдля ресурсоемких объектов - Ручное управление через
clear()при достижении лимита

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы