Method Area [class data(cv)]
Call Stack [main(lv)]
Heap[instance(iv)]
메서드가 호출되면 수행에 필요한 메모리를 스택에 할당
메서드가 수행을 마치면 사용했던 메모리 반환 및 스택에서 제거
호출스택 제일 위의 메서드가 현재 실행중인 메서드
아레의 메서드가 바로위의 메서드를 호출한 메서드
Call Stack [main(lv)]
Heap[instance(iv)]
메서드가 호출되면 수행에 필요한 메모리를 스택에 할당
메서드가 수행을 마치면 사용했던 메모리 반환 및 스택에서 제거
호출스택 제일 위의 메서드가 현재 실행중인 메서드
아레의 메서드가 바로위의 메서드를 호출한 메서드
public class CallStackTest { static void first() { System.out.println("1. first()가 시작되었음"); second(); System.out.println("2. first()가 끝났음"); } static void second() { System.out.println("3. second()가 시작되었음"); System.out.println("4. second()가 끝났음"); } public static void main(String[] args) { System.out.println("5. main(String[] args)이 시작되었음"); first(); System.out.println("6. main(String[] args)이 끝났음"); } }