объекта в качестве переменной класса вызывает StackOverflowпереполнение стека Java
public class stack {
stack obj = new stack(); // its obvious that during class loading obj will call class to
// load and infinite loop will occur.
}
Допустим, я использую static
в из класса OBJ
public class stack {
static stack obj = new stack(); // it will not cause infinite loop and program will //execute successfully
}
Статические переменные выделяются в памяти, когда класс впервые попал в JVM (насколько я знаю). Говорите в первый раз только в том случае, если JVM начинает выделять память вышеопределенной переменной static
. Это вызовет повторный вызов класса, и это также вызовет бесконечный цикл. Где-то я ошибаюсь. Может кто-нибудь подчеркнуть, где я ошибаюсь.