728x90
반응형
✅ 한눈에 보는 차이표
구성 요소설명포함 관계주요 역할
| JDK (Java Development Kit) | 자바 개발 도구 전체 세트 | JDK ⊃ JRE ⊃ JVM | 개발 + 실행 |
| JRE (Java Runtime Environment) | 자바 실행 환경 | JRE ⊃ JVM | 실행만 가능 |
| JVM (Java Virtual Machine) | 자바 가상 머신 (실행 엔진) | JRE ⊃ JVM | 바이트코드 실행 |
🔍 1. JVM (Java Virtual Machine)
“Write once, run anywhere”를 실현시키는 핵심”
- 역할: .class 파일(바이트코드)을 실행
- 동작:
- Class Loader: 클래스를 메모리에 로딩
- Bytecode Verifier: 코드 검증
- Execution Engine: 코드 실행 (JIT 컴파일 포함)
- OS/환경별로 다름: 각 OS에 맞는 JVM이 존재
🔸 JVM만으로는 자바 코드 작성 불가
🔍 2. JRE (Java Runtime Environment)
“자바 프로그램을 실행할 수 있는 환경”
- 구성:
- JVM
- 자바 클래스 라이브러리(rt.jar)
- 필요한 기타 실행파일 (예: java 명령어)
- 목적: 자바 프로그램 실행만 가능 (컴파일 ×)
- 대상: 자바 개발이 아닌 실행만 필요한 사용자 (예: 서버 운영자)
🔸 개발 도구 없음 (javac X)
🔍 3. JDK (Java Development Kit)
“자바를 개발하기 위한 모든 도구 포함”
- 구성:
- JRE
- 개발 툴 (javac, javadoc, jar 등)
- 역할: 자바 소스 코드를 작성, 컴파일, 디버깅 가능
- 대상: 자바 개발자
🔸 JDK 설치하면 JRE, JVM 포함
[JDK]
└── [JRE]
└── [JVM]
🧠 쉽게 외우는 포인트
외우는 방법
| JVM은 바이트코드를 실행하는 엔진 |
| JRE는 JVM + 실행 라이브러리 = 실행 환경 |
| JDK는 JRE + 개발 도구 = 개발 키트 |
🎯 개발자 입장에서 요약
- 자바 코드 작성 ➡️ JDK 필수
- 자바 앱 실행만 ➡️ JRE만 설치해도 가능
- 바이트코드 실행 책임자 ➡️ JVM
728x90
반응형
'Programming > JAVA' 카테고리의 다른 글
| 📌 List, Set, Map 차이점 1분 컷 — 진짜 외우는 법 알려드림 (3) | 2025.08.04 |
|---|---|
| 🏷️JVM이란? 자바의 핵심 실행 엔진 구조 완벽 정리 (2) | 2025.07.30 |
| ☕ Java 가비지 컬렉션(GC) 동작 원리 쉽게 정리! (0) | 2022.11.21 |
| 📌접근자란? Getter와 Setter 개념과 Java 예제로 쉽게 이해하기 (0) | 2022.10.31 |
| 📌Java static 키워드 완벽 정리: 메모리 구조부터 예제까지 한눈에! (0) | 2022.10.30 |