Back to questions
Junior — Middle
65
Какие типы ссылок применяются в языке Java?
Companies where asked
DCloud
Answer from AI
sobes.tech AI
В Java существуют несколько типов ссылок, которые управляют временем жизни объектов и их сборкой мусора:
-
Strong Reference (сильная ссылка) — обычная ссылка на объект. Пока есть сильные ссылки, объект не будет удалён сборщиком мусора.
-
Soft Reference (мягкая ссылка) — используется для кэширования. Объект с мягкой ссылкой будет удалён только при нехватке памяти.
-
Weak Reference (слабая ссылка) — объект с такой ссылкой может быть удалён при следующем цикле сборки мусора, даже если ссылка существует.
-
Phantom Reference (фантомная ссылка) — используется для отслеживания момента, когда объект уже готов к удалению, но ещё не удалён.
Пример использования слабой ссылки:
WeakReference<MyObject> weakRef = new WeakReference<>(new MyObject());
MyObject obj = weakRef.get();
if (obj != null) {
// объект ещё доступен
} else {
// объект уже собран сборщиком мусора
}