Skip to content

Latest commit

 

History

History
27 lines (14 loc) · 1.34 KB

Java 실행 과정.md

File metadata and controls

27 lines (14 loc) · 1.34 KB

Java 실행 과정

컴파일

컴파일이라고 하면 어떤 언어로 된 소스 코드를 기계가 인식할 수 있는 네이티브 코드로 변환하는 과정을 의미하지만, 자바에서의 컴파일은 자바 언어로 된 코드를 JVM이 인식할 수 있는 JVM 명령어 코드(바이트코드)로 변환하는 것을 의미한다.
드물지만 자바에서의 컴파일도 일반적인 의미의 컴파일처럼 기계가 인식할 수 있는 코드로 변환하는 과정을 의미할 때도 있다. 대표적으로 JIT 컴파일러가 하는 컴파일은 바이트코드로 변환하는 것이 아니라 바이트코드로 변환된 것을 네이티브 코드로 변환하는 것을 의미한다.

컴파일의 단계

자바 소스 코드를 컴파일하는 과정이 몇 단계로 구성되는지 구체적으로 스펙에 명시되어 있지는 않다. 참고로 C 프로그램을 컴파일하는 과정은 보통 다음과 같이 4 단계로 구분한다.

  1. Pre-processing
  2. Compiling
  3. Assembly
  4. Linking

참고: https://www.geeksforgeeks.org/compiling-a-c-program-behind-the-scenes/

컴파일 과정은

자바 컴파일러에 의해 자바 코드가 어떤 바이트코드로 변환되는지는 JVM 스펙에 예제와 함께 잘 나와 있다.

실행