다음 코드를 실행하면 스택 영역에서 어떤 변화가 있는지 확인해보자.
JavaMemoryMain1
package memory;
public class JavaMemoryMain1 {
public static void main(String[] args) {
System.out.println("main() 메서드 시작");
method1(10);
System.out.println("main() 메서드 끝");
}
static void method1(int m1) {
System.out.println("method1() 메서드 시작");
int cal = m1 * 2;
method2(cal);
System.out.println("method1() 메서드 종료");
}
static void method2(int m2) {
System.out.println("method2() 메서드 시작");
System.out.println("method2() 메서드 종료");
}
}
main() 메서드 시작
method1() 메서드 시작
method2() 메서드 시작
method2() 메서드 종료
method1() 메서드 종료
main() 메서드 끝