class C{
public static void main(String[] args){
System.out.println(new B().obj.i);
}
}
class B{
B obj = new B();
int i =100;
}
이게 메모리구조에 어떻게 올라가길래 스택이 터지는지 궁금합니다.
at B.<init>(er.java:10)
이게 한 50개 나오는듯
제 생각에는 new B() 불러서 b클래스 올라갔는데 그 안에 B인스턴스생성 또 있어서 이게 계속 생성만 되는 그거 맞나여?
B의 인스턴스를 저장하는 힙은 절대 안터지는데 B 클래스 초기화 루틴의 무한 재귀 호출로 스택 오버플로우가 생기는 것
ㄴ 감사함돠