공부할 것 !

자바 컴파일 과정 이해하기

sejin2 2024. 5. 12. 18:17

자바 코드가 실행 가능한 형태로 변환되는 과정을 단계별로 살펴본다.
자바는 독립적인 언어로서, 한 번 작성하면 어디서나 실행할 수 있는 장점을 가졌는데 이러한 특성은 자바 컴파일 과정에서 비롯된다. 

자바 컴파일 과정은 소스 코드 작성에서 시작하여 실행 가능한 프로그램이 되기까지 여러 단계를 포함한다.

1. 소스 코드 작성 ( .java 파일 )
.java 확장자를 가진 파일에 자바 코드를 작성한다. 이 코드는 클래스, 메서드, 변수 등을 포함한다.

2. 컴파일 ( .class 파일 생성 ) 
소스 코드가 작성되면, 자바 컴파일러를 사용하여 소스 파일을 컴파일한다. 이 과정에서 컴파일러는 .java 파일을 읽어 들여 문법적 오류를 검사하고, 바이트 코드로 된 .class 파일을 생성한다. 바이트 코드는 자바 가상 머신(JVM)이 이해할 수 있는 중간 형태의 코드이다.

3. 로드 
컴파일 단계가 성공적으로 완료가 되면, .class파일들은 자바 가상 머신(JVM)에 의해 로드된다. 클래스 로더는 이러한 바이트 코드 파일들을 메모리에 로드하는 역할을 한다. 

5. 링크
로드된 바이트 코드는 링크 과정을 거치게 된다. 이 단계에서는 코드 검증, 변수 및 클래스의 메모리 할당, 심볼릭 메모리 참조를 실제 참조로 변화하는 작업이 이루어진다.

6. 초기화 
링크 과정이 완료된 후, 초기화 단계에서는 정적 변수들이 초기화되고 정적 블록이 실행된다.

7. 실행
모든 준비 단계를 거친 후 자바 프로그램이 실행된다. JVM은 .class 파일에 있는 바이트 코드를 해석하고 실행한다.
이 과정에서 자바의 플랫폼의 독립적인 특성이 중요한 역할을 한다. JVM이 특정 플랫폼에 맞게 바이트 코드를 해석하고 실행한다.