Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
Tags
- software enginner
- java #추상클래스
- 주니어 백엔드 개발자
- 이분탐색
- 반복문
- server engineer
- level2
- 서버 엔지니어
- 서버 개발자
- server developer
- level3
- tmax tibero
- 올 겨울은 조금 따뜻할 것 같다.
- 넥슨개발자컨퍼런스
- 25304번
- 브루트 포스법
- 단계10
- 정보처리기사 실기 #정처기 실기 #2024년 2회 #정처기 2024년 2회 #공부법 # 꿀팁
- 2798블랙잭
- 나는야 4학년 #5학년 까지 가보자구
- Spring
- object 클래스 # java
- static #자바 메모리 구조 #멤버 변수
- ndc2025
- heap area #stack area #static area #jvm
- 백엔드 개발자 로드맵
- Next.js
- 자바 #자바문법 #자바기초 #참조형 #기본형
- java #예외처리 #throw #throws
- tibero 7.23
Archives
- Today
- Total
개발자 쿠키
[Java] JVM 메모리 구조 본문

- jvm은 runtime에 data를 올려놓는 공간인 runtime data area를 가지고 있다. 이 공간은 5개로 나뉜다.
- 뒤의 pc register과 native method stack 영역은 low level의 operation을 하기 위한 메모리 공간임 3개로 나눔
- Method Area(Static Area)
- Heap Area
- Stack Area
Static Area (Method Area)
정적인 영역의 메모리
저장되는 목록
- Type명, Type의 종 저장되는 목록 류, Type의 제어자, 연관된 Interface 정보
- Runtime Constant Pool - Type의 상수 정보를 저장하는 Pool, 상수는 인덱스를 통해 접근 가능
- Field Information - 인스턴스 변수의 정보를 저장
- Method Information - 메서드의 모든 정보를 저장
- Class Variable - static 키워드로 선언된 변수가 저장된다.

Stack Area에 저장되는 목록
- Heap 영역에 생성되는 객체의 참조값
- 원시 타입의 경우 데이터 자체가 저장됨
메서드가 호출될 시 할당되는 영역
- 메서드 호출 시 메서드 내부의 지역 변수 또한 Stack Area에 할당된다.
- 할당된다는 뜻은 Heap 공간에 객체 데이터를 올리고 그 객체 데이터에 대한 참조값이 할당된다는 뜻이다.
- 각 스레드는 하나의 Stack 영역을 할당 받는다.
- 스레드는 각자의 메모리 공간을 가지고 메서드를 수행한다.
Heap Area
heap area에 객체의 데이터에 저장된다. 동적으로 생성된 객체(인스턴스)가 저장되는 공간
Heap Area에 생성된 객체들은 다른 객체의 필드 또는 스택에 존재하는 다른 메서드에 의해 참조될 수 있다.
메서드가 샐행되면서 stack영역에는 참조값만을 저장해 놓고 heap area에 객체 데이터를 저장해 놓는다.

'java' 카테고리의 다른 글
| 명품 JAVA Programming Chap01~02 자바 기본 프로그래밍 (0) | 2022.08.01 |
|---|---|
| [Java] 추상 클래스 (0) | 2022.07.27 |
| [Java] main(string[] args) 코드 뜯어보기 (0) | 2022.07.22 |
| [Java] 자바 메모리 구조와 static (0) | 2022.07.18 |
| [Java] 자바 기본형 vs 참조형 (0) | 2022.07.13 |