취준생대상
Java에서 스택과 힙 메모리에 대해서 설명하세요. - 면접질문
Pro.Dev
2025. 3. 17. 10:49
반응형
취준생 대상 면접질문에 대한, 저같은 팀장 입장에서 어떤 대답을 원하는지 알려드립니다.
- 두 영역의 역할을 정확히 구분
- 스택 메모리와 힙 메모리에서 메모리 할당과 해제는 언제?
- 구체적인 코드 예시 (int x = 10;, new User()) → 실무 감각 있음
- GC 가 왜 필요한건지?
저는 다음처럼 대답하는 지원자라면, 뽑습니다.
"네, 스택과 힙은 둘 다 JVM의 메모리 영역 중 하나인데요.
스택 메모리는 메소드가 호출될 때 생성되는 지역 변수나 메소드 호출 정보가 저장되는 공간이고, 메소드가 끝나면 해당 스택 영역이 바로 제거됩니다.
반면에 힙 메모리는 new 키워드로 생성되는 객체 인스턴스가 저장되는 공간입니다. 이 영역은 JVM의 Garbage Collector가 관리합니다.
예를 들어, int x = 10; 같은 지역 변수는 스택에 저장되고, User user = new User();처럼 객체를 생성하면 user 객체는 힙 메모리에 저장되고, 스택에는 그 객체의 참조값이 저장됩니다."
저는, 다음처럼 하는 분은 바로 그냥 합격시킵니다.
화이트보드에 두 메모리 영역을 그림으로 그리고, int x = 10; 와 User user = new User(); 가 실행될때의 그림을 그리면, 바로 입사 확정!!
반응형