[Java] 까먹지 말아야 할 Java 메모리 구조

2025. 3. 4. 09:29·Java

자바의 메모리 구조


 

메서드 영역 (Method Area)

메서드 영역은 프로그램을 실행하는데 필요한 공통 데이터를 관리하는 영역이다 -> 프로그램의 모든 영역에서 접근 가능

- 클래스 정보 : 클래스의 코드, 필드, 메서드, 생성자등 모든 코드 존재
- static 영역 : static 변수 보관
- 런타임 상수 풀 : 프로그램을 실행하는데 필요한 공통 리터럴 상수 보관 -> 이후 네트워크 부분에서 사용되는 PORT 번호 등을 사용할 때 접근

 

스택 영역 (Stack Area)

우리가 흔히 스레드라고 칭하는 그 스택이다. 스레드별로 하나의 실행 스택이 존재하며, 이 스택 영역에 스택 프레임을 저장 -> 지역변수, 메서드 호출 정보 등 보관

- 스택 프레임 : 메서드를 호출할 때마다 하나의 스택 프레임이 쌓이고, 메서드가 종료되면 해당 스택 프레임 제거 -> 즉 하나의 연산과정 or 메서드 실행 이라고 생각하면 된다.

 

힙 영역 (Heap Area)

인스턴스 및 배열이 생성되는 영역이다. 추가로 GC 가 이루어지는 주요 영역이다(사용하지 않는 자바 자원 자동 정리).

 


가끔 내용을 까먹어서 오랜만에 복기할 겸 내용을 정리한다!

'Java' 카테고리의 다른 글

[Java] synchronized 키워드가 필요한 이유 (예시)  (0) 2025.03.12
[Java] 까먹지 말아야 할 Java 스레드 생명 주기 및 상태 전이  (0) 2025.03.08
[Java] 채팅 프로그램 소켓 연결 구현 1 - 1 대 1 통신을 해보자  (0) 2025.02.09
[Java] 두줄로 이해하는 객체 직렬화, 역직렬화  (1) 2025.01.28
[Java] 예외처리 - 부모 자식 관계  (1) 2025.01.02
'Java' 카테고리의 다른 글
  • [Java] synchronized 키워드가 필요한 이유 (예시)
  • [Java] 까먹지 말아야 할 Java 스레드 생명 주기 및 상태 전이
  • [Java] 채팅 프로그램 소켓 연결 구현 1 - 1 대 1 통신을 해보자
  • [Java] 두줄로 이해하는 객체 직렬화, 역직렬화
xub2
xub2
//given //when //then
  • xub2
    xublog
    xub2
  • 전체
    오늘
    어제
    • 전체 글 모아보기 (123) N
      • 잡담 (9)
      • 도전 , 자격증 (2)
      • Error (3)
      • Java (22)
      • Spring (4)
        • Core (3)
        • MVC (1)
      • DataBase (6)
        • Database Modeling (4)
        • SQL (2)
      • HTTP (11) N
      • Network (17)
      • Software Engineering (3)
      • Operating System (3)
      • Algorithm (16)
      • Project (9)
        • Web (0)
        • iOS (8)
        • Python (1)
      • A.I (13)
      • Linux (5)
  • 블로그 메뉴

    • 홈
  • 링크

    • Github
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
xub2
[Java] 까먹지 말아야 할 Java 메모리 구조
상단으로

티스토리툴바