Java: Compile
Compile 이란?
컴파일은 코드를 컴퓨터가 이해할 수 있는 형태로 변환하는 과정을 말합니다. 이 과정은 보통 다음과 같은 단계로 이루어집니다.
소스 코드 작성
개발자가 자바 소스코드(.java)를 작성합니다.
컴파일 소스
코드가 작성되면 자바 컴파일러(javac)를 사용하여 소스 코드를 바이트 코드로 번역합니다.
이 바이트 코드는 로 아직 컴퓨터가 읽을 수 없지만 Java 가상 머신(JVM)이 실행할 수 있는 중간 형태의 코드입니다.
바이트 코드의 각 명령어는 1바이트 크기의 Opcode와 추가 피연산자로 이루어져 있습니다.
컴파일된 바이트 코드 파일은 .class 확장자를 가집니다.
클래스 로더
클래스 로더는 동적로딩(Dynamic Loading)을 통해 필요한 클래스들을 로딩 및 링크하여 런타임 데이터 영역(Runtime Data area), 즉 JVM의 메모리에 올립니다.
클래스 로더 세부 동작(로드, 검증, 준비, 분석. 초기화)
바이트 코드 실행
컴파일된 바이트 코드는 Java 가상 머신(JVM)에서 실행됩니다. JVM은 특정 플랫폼에 의존하지 않고 동일한 바이트 코드를 실행할 수 있도록 해줍니다. JVM은 바이트 코드를 기계어로 번역하고 실행합니다.
실행 결과
바이트 코드가 JVM에서 실행되면 프로그램이 동작하고, 결과가 출력되거나 필요에 따라 다른 동작을 수행합니다.