상세 컨텐츠

본문 제목

자바 메모리 Stack , heap 정적,동적 할당에 대해 다시 공부

관리X 과거글

by 까먹기전에 2015. 2. 7. 15:17

본문

반응형



정적

static 같은걸로 선언 할 경우위에 사진처럼 데이터 영역에 먼저 올라간다.

프로그램 종료시 소멸된다.



동적

new 연산자를 사용하는것은 동적 할당인데 new를 시행할때 메모리를 할당하고 틀만 만드는 구조






개인적으로 정리안되는 부분

stack 에 저장되는 지역변수.매개변수도 정적할당??


그리고 int[] a = new int[5];


이것도 미리 5개의방의 정적할당인데


int[] a 는 인트 타입의 자료형만 stack에 저장하는거고 new int[5] 이건heap에 4바이트의 메모리가 생긴다는게 맞는지???


그리고 stack은 heap에 있는 new int 의 상대적주소를 가진다가 맞습니까?

(stack에 있는 a 변수를 사용하지 않으면 메모리주소로 사용해야하기때문에 쓰기 힘들다 맞습니까?)


처음에 제대로 정리를 안하고넘어가서 너무 헷갈..


눈에안보이니 와닿지가 않는듯...ㅠㅠ

관련글 더보기