Books

스프링 입문을 위한 자바 객체 지향의 원리와 이해 - 자바로 보는 T메모리 구조

워터파슬리 2023. 7. 25. 17:15
728x90

 

public class HelloWorld{
    public static void main(String[] args){
        System.out.println(“Hello World!”);
    }	
}

 

  1. JRE가 main() 메서드를 찾으면 JVM을 부팅함
  2. JVM안 목적파일을 실행하는데 제일 먼저 전처리 과정을 진행함
    • 전처리 과정
      • java.lang 패키지 T메모리의 스태틱 영역에 할당
      • import된 패키지를 T메모리의 스태틱 영역에 할당
      • 프로그램 상의 모든 클래스를 T메모리의 스태틱 영역에 할당
  3. main() 메서드를 실행하기 위해 스택 프레임이 T메모리의 스택 영역에 할당
    • 중괄호(‘{’)를 만날 때마다 스택 프레임이 하나씩 생김
    • 스택 프레임 안에 메서드의 인자를 저장할 변수 공간 할당
  4. System.out.println(“Hello World”); -> 해당 코드는 코드 실행 영역에서 실행
  5. 중괄호(‘}’)를 만나 스택 프레임이 소멸
  6. main() 메서드가 끝나면 JRE는 JVM을 종료하고 JRE 자체도 메모리에서 사라짐

 

728x90