Можете объяснить принцип работы автоматического управления памятью в Java и как она очищает неиспользуемые объекты?
В Java автоматическое управление памятью реализовано через сборщик мусора (Garbage Collector, GC).
Читать ответПодготовка к интервью
154 вопроса с собеседований в Effective Mobile
Что проверяют на интервью
Подборка объединяет вопросы, отмеченные на этапах интервью в Effective Mobile. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: python, mobile, java.
Каталог
В Java автоматическое управление памятью реализовано через сборщик мусора (Garbage Collector, GC).
Читать ответВ Java Stream API операции делятся на промежуточные и терминальные.
Читать ответВ Java методы equals и hashCode тесно связаны и должны быть реализованы согласованно, чтобы объекты корректно работали в коллекциях, основанных на хешировании, например, в HashMap или HashSet.
Читать ответНет, терминальный метод в Stream API Java можно применить только один раз к одному потоку.
Читать ответДа, библиотека java.util.concurrent предоставляет мощные инструменты для управления потоками и синхронизации в Java.
Читать ответАтомарные операции — это операции, которые выполняются целиком или не выполняются вовсе, без промежуточных состояний, видимых другим потокам.
Читать ответДа, начиная с Java 8, в интерфейсах можно иметь конкретные реализации методов с помощью default методов и static методов.
Читать ответЛогирование и аудит действий без изменения основного кода. Управление транзакциями. Обработка исключений. Безопасность (например, проверка прав доступа). Кэширование.
Читать ответПессимистичная и оптимистичная блокировки — это две стратегии управления конкурентным доступом к данным.
Читать ответСитуация, когда метод вызывает сам себя внутри своего тела, называется рекурсией.
Читать ответОсобенности полного блокирования:
Читать ответВ JVM стек вызовов (call stack) очищается автоматически при завершении выполнения метода. Каждый вызов метода добавляет новый фрейм (stack frame) в стек, содержащий локальные переменные и адрес возврата.
Читать ответ