Stack 썸네일형 리스트형 스택과 힙 1. 스택(Stack) 스택은 지역변수(메소드 내에 존재하는 변수, 메소드의 인자)가 존재하는 공간이다. 메소드를 호출하면 호출 스택(call stack)의 맨 위에 stack frame(코드, 지역 변수 값)이 쌓이게 된다. 함수호출이 끝나야만 호출 스택에서 해당 스택 프레임을 pop하게 된다. 2. 힙(Heap) 힙은 객체가 존재하는 공간이고, 당연히 인스턴스 변수(클래스 내에 선언되어 있는 변수)도 이 안에 존재한다. 여기에서 힙은 일반적인 힙과는 약간 다르다. 왜냐하면 garbage collection을 하는 힙이기 때문이다. *만약 메소드 내에서 객체를 생성하면 이는 스택에 들어갈까? 아니면 힙에 들어갈까? 객체가 생성되면 무조건 힙에 생성된다. 그리고 primitive 타입의 변수(int, f.. 더보기 이전 1 다음