TGViewer
Java Learning Java Learning @java_per_month · 16.6K subscribers
Post #3091 2.55K
❓ Вопрос на собеседовании

Что такое метод finalize() в Java, как он работает и почему его использование не рекомендуется?

Ответ ⬇️
Метод finalize() вызывается перед тем, как объект удаляется сборщиком мусора (garbage collector). Он используется для освобождения ресурсов, таких как файловые дескрипторы или сетевые соединения. Однако его использование не рекомендуется из-за непредсказуемости вызова (точное время выполнения сборки мусора неизвестно) и потенциальных проблем с производительностью. Вместо этого рекомендуется использовать try-with-resources или явно закрывать ресурсы.

Пример использования ⚙️
class Resource {
@Override
protected void finalize() throws Throwable {
System.out.println("Ресурс освобожден!");
}
}

public class Main {
public static void main(String[] args) {
new Resource(); // Создаем объект без сохранения ссылки
System.gc(); // Явный вызов сборщика мусора (не гарантирует немедленного выполнения)

System.out.println("Завершение программы");
}
}


Java Learning 👩‍💻
  • 👍 9
  • 🔥 1
More from @java_per_month
  1. Oct 6, 2026🤺 Почему ты получаешь отказ после «норм собеса»? Дело не в знаниях — ты просто не знаешь,…
  2. Oct 6, 2026⚙️ Set.retainAll() В Java метод Set.retainAll() позволяет оставить только те элементы множ…
  3. Sep 14, 2026❓ Вопрос на собеседовании Что такое ForkJoinPool в Java, как он работает, и как его исполь…
  4. Sep 4, 2026⚙️ List.subList() В Java метод subList() позволяет создать представление части списка. Это…
  5. Sep 1, 2026🔴 Завтра тестовое собеседование с Java-разработчиком 2 сентября(уже завтра!) в 19:00 по м…
  6. Aug 17, 2026➡️ Quarkus — быстрый и лёгкий фреймворк для Java-приложений Quarkus — оптимизированный фре…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →