• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

스택 오버플로우 관련 상속 개념

22.11.06 18:03 작성 조회수 333

0

UIManager 클래스를 만들면서 무심결에 Managers를 상속 받았더니 Managers의 UIManager ui = new UIManager(); 부분에서 UIManager를 불러오고, 여기까지는 평범한데

UIManager 부분이 끝나면 UIManager _ui = new UIManager(); 의 다음 진행이 아닌 Managers의 초기 코드로 넘어가 다시 UIManager_ui = new UIManager(); 를 실행해버려 무한 재귀가 일어나더군요. 결국 스택 오버플로우 오류가 일어났고, 상속의 개념이 부족해서인지 위 진행이 이해가 잘 되지 않습니다.

어떤 개념이 있어 저렇게 진행되는 것인지 알려주시면 감사하겠습니다.

(질문이 이상한 것 같아 수정 후 재업했습니다)

답변 1

답변을 작성해보세요.

2

UIManager가 Managers를 상속 받으면
UIManager의 생성자를 호출하고 Managers의 생성자를 호출하게 되는데,
Managers의 생성자에서는 또 UIManager를 만드는 코드가 있을 경우
뫼비우스의 띠처럼 끝나지 않고 A->B->A->B 생성하는 상황으로 보입니다.

세용님의 프로필

세용

질문자

2022.11.06

와 감사합니다.. 그런 개념이 있었군요. 이해했습니다.