상세 컨텐츠

본문 제목

Heap, Stack, Method

JAVA/JAVA basic

by 영공쁘이 2021. 12. 8. 00:24

본문

static

정적 멤버(정적 변수/메소드)로써, 클래스에 고정된 변수를 일컫는다.

클래스 로더가 데이터를 메소드 메모리 영역에 적재할 때! 클래스별로 관리가 되기 때문에 로딩이 되면 바로 반응한다.

 - 메모리를 공유함 -> 그래서 어디서든 참조가 가능하다(즉각적으로 바로 실행이 가능), 시스템 종료 후에도 남음

※ 그래서, 너무 많이 쓰지 않는 것이 좋음 

 

Heap 영역 :  주로 객체(배열과 객체들)들이 생성 및 할당하고 stack 영역에서 참조를 합니다!! 

그래서, 만약에 더이상 참조하지 않는다면, Garbage Collector에 데이터가 버려집니당.

 

Stack 영역 : 

메소드를 호출 시:  frame을 추가

             종료 시: 프레임 제거

변수가 생성되는 시점: 최초로 변수에 값이 저장될 때! static된 곳에서만 참조를 하고 그 외에서 쓴다면 스택에서 제거됨

 

Method(메소드 메모리 영역): 모든 스레드가 공유됨(static) 위의 기능을 함

 

그림 및 글 참조 : https://brownbears.tistory.com/519

'JAVA > JAVA basic' 카테고리의 다른 글

JSONProperty  (0) 2023.01.25
Map데이터 가져오기  (0) 2022.01.27
자바 - 기초(자바의 정석) - chapter 2, 3  (0) 2021.11.29
자바 개념  (0) 2021.08.23
자바  (0) 2021.08.18

관련글 더보기