인프런 커뮤니티 질문&답변
JVM - 자바 가상머신의 구조와 실행 매커니즘 2. 자바개요 부분에서 질문 있습니다.
작성
·
12
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 김태우님.
김태우님이 질문하신 내용은 자바의 중요한 컴포넌트에 대한 것으로, 자바의 코드 실행 과정에서 발생할 수 있는 기혼란을 다룬 질문입니다.
자바 컴파일러와 JVM의 역할 차이:
자바 컴파일러 (javac):
- 자바 소스 코드(.java 파일)를 컴파일하여 바이트 코드(.class 파일)로 변환합니다.
- 이 바이트 코드는 플랫폼 독립적인 중간 코드로, 여러 운영 체제에서 실행할 수 있습니다.
- 자바 소스 코드(.java 파일)를 컴파일하여 바이트 코드(.class 파일)로 변환합니다.
JVM (Java Virtual Machine):
- 바이트 코드를 기계어로 변환하여 실제 실행하도록 돕는 역할을 합니다.
- 이 과정에서 JVM은 특정 플랫폼에 맞는 최적화를 수행하여, 자바 프로그램이 다양한 플랫폼에서 동일하게 실행될 수 있도록 보장합니다.
- JVM 내의 Just-In-Time 컴파일러(JIT)는 실행 중인 바이트 코드를 즉석에서 기계어로 변환하여 실행 성능을 향상시킵니다.
- 바이트 코드를 기계어로 변환하여 실제 실행하도록 돕는 역할을 합니다.
결론적으로, 자바 컴파일러는 자바 코드를 바이트 코드로 변환하고, JVM은 이 바이트 코드를 각 플랫폼에 맞게 기계어로 변환하여 실행합니다.
보다 자세한 설명이나 관련 정보에 대해서는, 아래의 구체적인 답변 링크를 참고하시길 권장드립니다:
- JVM, JDK, JRE의 차이
- 자바 프로그램의 실행 과정
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.




