반응형
안녕하세요.
이번 포스팅에서는 Java에서 메모리가 할당되는 영역인 Stack과 Heap에 대해서 다뤄보겠습니다.
프로그래밍 언어에서 변수, 객체가 선언되면 해당 변수는 운영체제의 메모리를 받아서 사용합니다.
Java에서는 JVM이라는 기능이 이 역할을 하고 있습니다.
JVM
OS의 메모리 영역에 접근해서 Java의 메모리를 관리하는 가상의 프로그램
GC(Garbage Collector)
Java에서 메모리 관리를 해주는 기능
메모리 영역에서 사용되지 않는 영역을 탐지해서 할당받은 메모리를 해제해줌
Java의 메모리 영역
Stack
- 정적으로 할당된 메모리 영역
- 기본 자료형의 변수, 지역 변수가 Stack 메모리에 저장되며, 값도 같이 Stack 메모리에 저장
- Object를 가리키는 변수는 Stack 메모리에 저장
Heap
- 동적으로 할당된 메모리 영역
- 모든 Object 타입의 데이터가 할당(new 연산자를 통해 생성된 객체가 할당)
- Object 그 자체는 Heap에 저장
반응형
'BE > Java' 카테고리의 다른 글
[오류 해결] Xml 파싱 시, 유니코드 문자 치환하기 (0) | 2022.05.10 |
---|---|
[Java] 추상클래스 vs 인터페이스 (0) | 2022.04.03 |
[Java] Static에 대해서 (0) | 2022.03.24 |
[Java] 래퍼 클래스(Wrapper Class)란? (0) | 2022.03.22 |
[Jasper] Jasper Studio DB 연결 방법 (0) | 2022.02.19 |