Middle
27
0
questionbank

Защищают ли все виды ссылок объект от удаления?

Ответ от нейросети sobes.tech

Нет, не все. Только сильные (strong) ссылки защищают объект от сборки мусора. Слабые (weak), фантомные (phantom) и мягкие (soft) ссылки этого не делают.

Вот их основные отличия:

  • Сильная (Strong) ссылка: Стандартная ссылка в Java/Kotlin. Если на объект есть хотя бы одна сильная ссылка, он не будет собран сборщиком мусора. Присваивается по умолчанию.
  • Мягкая (Soft) ссылка: Объект, на который ссылается мягкая ссылка, может быть собран сборщиком мусора только если JVM остро нуждается в памяти. Полезно для кеширования. Реализуется через SoftReference.
  • Слабая (Weak) ссылка: Объект, на который ссылается слабая ссылка, может быть собран сборщиком мусора в любой момент, если на него нет сильных ссылок. Используется для реализации кешей, которые не бл

Нет, не все. Только сильные (strong) ссылки защищают объект от сборки мусора. Слабые (weak), фантомные (phantom) и мягкие (soft) ссылки этого не делают.

Вот их основные отличия:

  • Сильная (Strong) ссылка: Стандартная ссылка в Java/Kotlin. Если на объект есть хотя бы одна сильная ссылка, он не будет собран сборщиком мусора. Присваивается по умолчанию.
  • Мягкая (Soft) ссылка: Объект, на который ссылается мягкая ссылка, может быть собран сборщиком мусора только если JVM остро нуждается в памяти. Полезно для кеширования. Реализуется через SoftReference.
  • Слабая (Weak) ссылка: Объект, на который ссылается слабая ссылка, может быть собран сборщиком мусора в любой момент, если на него нет сильных ссылок. Используется для реализации кешей, которые не бл

Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.

memory-managementgarbage-collectionreference-countingweak-referencesobject-lifetime