☕ Java 실행 사이클 & 콜백 흐름 (with Meeting 예제)

labbiel·2025년 4월 9일

자바

목록 보기
4/9
post-thumbnail

Meeting.java

public class Meeting {
    public String meet;
    public String target;

    public void printMessage() {
        System.out.println(target + " , " + meet);
    }
}

MeetingTestApp.java

public class MeetingTestApp {
    public static void main(String[] args) {
        // 1. Meeting 클래스 객체 생성 (메모리 할당)
        Meeting g = new Meeting();

        // 2. 필드 값 초기화
        g.meet = "오전 9시에 뵙겠습니다.";
        g.target = "안녕하세요 여러분";

        // 3. 메서드 호출
        g.printMessage(); // 콘솔 출력
    }
}

Java 프로그램 실행 사이클

1) 프로그램은 MeetingTextApp 클래스의 main() 메서드에서 시작됩니다. 자바 가상 머신(JVM)이 실행되면 main() 메서드를 콜백(callback) 하여 프로그램 흐름을 시작합니다.

2) Meeting g = new Meeting(); 구문을 통해 Meeting 클래스의 객체가 힙(Heap) 메모리에 생성되며, 클래스 구조가 메서드 영역에 로딩됩니다.

3) 생성된 객체 g의 필드에 값을 직접 할당합니다. 이 과정을 필드 초기화(Field Initialization) 라고 합니다.

  • g.meet = "오전 9시에 뵙겠습니다.";
  • g.target = "안녕하세요 여러분";

4) 필드 초기화가 완료되면 g.printMessage();를 호출하면서, Meeting 클래스에 정의된 메서드가 실행됩니다.


5) printMessage() 메서드는 내부적으로 System.out.println()을 통해 콘솔에 텍스트를 출력합니다:

안녕하세요 여러분 , 오전 9시에 뵙겠습니다.

6) 출력 후 main() 메서드의 실행이 종료되고, 프로그램이 정상적으로 종료됩니다. JVM은 사용한 메모리와 자원을 정리합니다.


🎯 실행 순서 요약
클래스 로딩 → 객체 생성 → 필드 초기화 → 메서드 호출 → 콘솔 출력 → 프로그램 종료


📌 키워드 정리

  • JVM: Java Virtual Machine, 자바 프로그램을 실행시키는 가상 머신
  • main() 메서드: 자바 애플리케이션의 진입점 (entry point), JVM이 호출
  • 콜백(Callback): JVM이 자동으로 main()을 호출함
  • 객체 생성: new 키워드를 통해 메모리에 클래스 인스턴스를 생성
  • 필드 초기화: 객체의 멤버 변수에 값을 할당하는 과정
  • 메서드 호출: 객체의 기능(함수)을 실행하는 명령
  • 콘솔 출력: System.out.println()을 통해 텍스트를 콘솔에 출력

✅ 결과 출력

안녕하세요 여러분 , 오전 9시에 뵙겠습니다.

0개의 댓글