개발자가 작성한 소스코드(.java파일)를 JDK(Java Development Kit)에 있는 자바 컴파일러(javac.exe)가 바이트코드(.class)로 변환한다. 이 변환된 코드를 JRE(Java Runtime Environment)에 포함된 JVM(Java Virtual Machine)이 기계어로 변환하여 실행한다.
Binary code vs 기계어 vs Byte code
Binary code
- 컴퓨터가 이해할 수 있도록 0과 1로 이루어진 코드(이진코드)
기계어
- 컴퓨터의 CPU가 이해할 수 있는 언어
- 컴파일러에 의해 컴파일된 코드는 binary code의 형태인 기계어다.
- 같은 명령을 수행하더라도 CPU 종류에 따라 기계어는 다를 수 있다.
Byte code
- Java에서 JVM이 해석하고 실행할 수 있는 코드
- 작성한 소스코드를 자바 컴파일러로 컴파일하면 byte code로 변환되고, 이 코드를 JVM은 해석하고 실행한다.
'언어 > Java' 카테고리의 다른 글
Java 기본 6 - 추상클래스 (0) | 2021.05.24 |
---|---|
Java 기본 5 - Enum (0) | 2021.05.23 |
연산자 (0) | 2021.05.20 |
자료형 (0) | 2021.05.20 |
JVM (0) | 2021.05.18 |
댓글