Ответ
В Java/Android есть 4 вида ссылок:
- Strong Reference – обычная ссылка, объект не будет собран GC, пока на него есть strong-ссылки.
Object obj = new Object(); // strong reference
- Soft Reference – объект будет собран GC, только если JVM не хватает памяти.
SoftReference<Object> softRef = new SoftReference<>(new Object());
- Weak Reference – объект будет собран при следующем проходе GC.
WeakReference<Object> weakRef = new WeakReference<>(new Object());
- Phantom Reference – используется для отслеживания момента удаления объекта (через ReferenceQueue).
PhantomReference<Object> phantomRef = new PhantomReference<>(new Object(), new ReferenceQueue<>());
Используются для управления памятью, кеширования и избегания утечек.
Видео-ответы
▶
Экспертное собеседование на позицию Senior Android разработчика
▶
Ганна Новикова, Виталий Лихачев: публичное собеседование по DevOps практикам
▶
Парень к 16-ти годам изучил Linux и DevOps и занимается пентестом? / Техсобес Junior DevOps Engineer
▶
Собеседование iOS разработчика | Вопросы Джуниору: Основы Swift, UIKit, Архитектура