Встречается на собеседованиях • сегодня

Какая ошибка вылетает, когда заканчивается место в Stack

StackOverflowError возникает, когда стек вызовов (call stack) переполняется из-за слишком глубокой рекурсии или бесконечного вызова методов. Это Runtime ошибка, наследуется от VirtualMachineError.

Пример:

java
public class StackOverflowExample {
    static void recursiveMethod() {
        recursiveMethod(); // Бесконечная рекурсия
    }
    
    public static void main(String[] args) {
        recursiveMethod(); // Вызовет StackOverflowError
    }
}

Причины:

  • Глубокая рекурсия без базового случая
  • Циклические вызовы между методами
  • Большие локальные переменные в методах

Решение:

  • Проверить условия выхода из рекурсии
  • Уменьшить глубину рекурсии
  • Переписать алгоритм итеративно
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы