본문 바로가기
  • Where there is a will there is a way.
개발/java

java 메모리 영역

by 소확행개발자 2019. 1. 14.

java 메모리 영역



메소드 영역 ( 메소드 영역은 JVM이 시작할 때 생성되고 모든 스레드가 공유하는 영역이다. )


runtime constant pool


클래스나 인터페이스 메서드와 필드등 모든 래퍼런스를 담고있는 테이블이다.

실제 메모리의 주소를 참조하여 중복을 방지한다.


field / static 데이터

method 

contruct



Heap 영역


힙 영역은 객체와 배열이 생성되는 영역이다. 참조하는 변수나 필드가 없다면 의미 없는 객체가 되기 때문에 이것을 쓰레기로 취급하고 

 Garbage Collector 를 실행시켜 쓰레기 객체를 힙 영역에서 자동으로 제거한다.


 JVM 스택 영역


 스택 영역은 각 스레드마다 하나씩 존재하며 스레드가 시작될 때 할당된다. 자바 프로그램에서 추가적으로 스레드를 생성하지 않았다면 

 main 스레드만 존재하므로 JVM 스택도 하나이다. 

 

 JVM 스택은 메소드를 호출할 때마다 프레임을 추가하고 메소드가 종료되면 해당 프레임을 제거하는 동작을 수행한다. 예외 발생 시 

'개발 > java' 카테고리의 다른 글

자바 날짜계산 유틸리티 구현  (0) 2019.02.19
java Ramda 리스트 컬랙션 데이터 예제  (0) 2019.01.30
카멜케이스 파스칼케이스 스네이크케이스  (0) 2019.01.07
Rxjava 익스텐션  (0) 2018.11.14
자바 예외처리  (0) 2018.10.22

댓글