자바

함수 호출과 스택 메모리

KIMYOUNGIN 2022. 8. 29. 13:49
반응형

함수가 수행 되면 메모리에 저장된다.

간단하게 알아보고 넘어가자...

우선 add() 함수가 있다고 쳐보자

public static add(int a, int b){

int sum = a + b;

return sum;

}

대충 이런 함수가 있다고 치고,,,

얘들 호출할 경우 add()에 해당되는 메모리 공간이 할당된다!! (C언어랑 비슷한듯)

이 메모리 공간을 스택(stack)이라고 함.

어차피 자바는 main함수에서 시작함으로 스택영역 첫 공간에는 main()함수가 쌓이고

add()호출하면 메모리 공간이 생성된다! 그럼 add()가 모두 실행 되고 나서는

스택영역에서 사라진다.

이렇게 호출한 순서대로 메모리 공간이 만들어지고~

맨 마지막에 호출된'add()'부터 반환된다. 

이걸 LIFO (Last In First Out) 구조라 부른다.

반응형