먼저, 컴파일러와 인터프리터
공통점
- 고레벨 언어로 작성된 프로그래밍 언어를 기계어로 변환한다
차이점
- 컴파일러Compiler : 전체 소스코드를 보고 명령어를 수집하고 재구성 (바로 기계어로 변환)
- 인터프리터Interpreter : 각 행을 연속적으로 분석하며 실행 (중간 코드로 변환하고 각 행마다 실행)
자바에서 컴파일러와 인터프리터가 하는 일
.java - (자바 컴파일러javac) -> .class - (자바 인터프리터) -> 기계어
: 프로그래밍 코드를 javac 명령으로 중간 형태인 바이트 코드*로 컴파일한다. 이후 자바 인터프리터가 한줄씩 해석하여 기계어로 변환한다.
*바이트 코드 : JVM이 이해할 수 있는 기계어
왜 두가지를 병행하나? : 성능과 보안 때문에.
'기록 > Java&Spring&Eclipse' 카테고리의 다른 글
[Eclipse] read-only 파일 오류 (0) | 2022.05.02 |
---|---|
[Java] 자바 개발도구 JDK (0) | 2022.05.02 |
[Java] 자바 디컴파일러 JD-GUI (0) | 2022.04.29 |
[Java/Spring] 스프링 sqlSessionFactory 오류 (0) | 2021.07.09 |
[Java] 자바 백슬래시, 따옴표 출력하기 (백준 10171번) (0) | 2021.06.30 |