JAVA

자바 메모리 구조

몽게구름 2025. 4. 26. 12:42

 

 

메서드 영역

  • 프로그램을 실행하는데 필요한 공통 데이터를 관리
  •  프로그램의 모든 영역에서 공유
  • 클래스 당  한 번만 올라감
  • GC의 대상이 아님

 

 

스택 영역

 

  • LIFO 구조 (Last In First Out)
  • 빠른 속도: 생성과 제거가 단순
  • 메서드 실행과 생명주기가 1:1 매칭
  • 쓰레드마다 따로 관리됨
  • GC 대상 아님 (자동 소멸됨)

힙 영역

  • new로 생성된 객체, 배열, 인스턴스 변수
  • 여러 스레드에서 공유됨 (동기화 필요)
  • 메서드 실행과 생명주기가 1:1 매칭
  • GC(Garbage Collector)**가 사용하지 않는 객체를 자동으로 제거