EMZETT.
Увійти

StackOverflowError (Java)

Коротко: Стек викликів заповнений, зазвичай через нескінченну рекурсію.

Докладніше: Кожен виклик методу займає місце в стеку.

Подробиці

Можливі причини

  • Рекурсія без умови завершення.
  • Взаємні виклики.

Рішення

  1. Додайте умову завершення.
  2. Замініть рекурсію циклом.
  3. Рідко: збільште розмір стеку (-Xss).

Див. також: Java, Методи