스택(Stack)
박스를 쌓는것을 생각해보자
우리는 박스를 하나씩 차곡차곡 쌓일테고 꺼낼땐 가장 나중에 쌓은 상자를 빼면서 사용한다.
중간에 있는것은 뺄수 없다.
호출 스택
메소드 수행에 필요한 메모리 공간
메소드가 호출되면 호출스택에 메모리 할당, 종료되면 해제
예를 들어 가장 처음에 main메소드를 실행시키고 main안에 println이 있다면 main은 println을 호출한다.
그럼 스택에는 가장 밑에 main 그리고 main이 부른 println이 쌓이고 실행이 되면서 println이 빠져나오면서 println()이 종료된다. 그리고 남은 main도 종료가 되면서 빠져나오게 된다. 이로써 스택에는 아무것도 남아있지 않는것이다.
'Java > 객체 지향' 카테고리의 다른 글
생성자(ft. this, super) (0) | 2023.05.08 |
---|---|
오버로딩(Overloading) & 오버라이딩(Overriding) (0) | 2023.05.08 |
메소드(ft . return 문) (0) | 2023.05.08 |
변수의 종류 (0) | 2023.05.08 |
클래스와 객체(feat. 객체 지향 언어의 역사) (0) | 2023.05.04 |