본문 바로가기DocsTIL - Java 기초 : JDK와 JVM
won2dev·

⚠️ 이 글은 저작권 이슈로 인해 일부 내용이 수정 또는 제거되었습니다.
💬 배운 기술 / 지식
- JDK (Java Development Kit) 구성 요소
- JVM (Java Virtual Machine)의 역할과 동작 원리
- 바이트코드(Bytecode)와 플랫폼 독립성
- JRE (Java Runtime Environment)와의 차이
☕ JDK (Java Development Kit)
- 구성 요소
javac 컴파일러: Java 소스 코드를 바이트코드로 변환java 실행기: JVM을 실행하는 명령어- 다양한 라이브러리와 도구 포함
- 역할
- Java 애플리케이션 개발에 필요한 모든 도구 제공
- 개발 환경 설치 시 보통 JDK를 설치함
🖥️ JVM (Java Virtual Machine)
- 역할
- 바이트코드를 실제 실행 가능한 머신 코드로 변환하고 실행
- Java 프로그램이 어느 운영체제에서나 실행되도록 플랫폼 독립성 제공
- 동작 과정
- Java 소스코드 (.java) → JDK의
javac 컴파일러 → 바이트코드 (.class) 생성 - JVM이 바이트코드를 로드하여 실행
- 메모리 구조
- 메서드 영역, 힙, 스택 등으로 구성되어 메모리 관리 수행
📦 JRE (Java Runtime Environment)와의 차이
- JRE는 JVM과 기본 라이브러리만 포함하여 Java 프로그램 실행만 가능
- JDK는 JRE 포함 + 개발 도구(컴파일러, 디버거 등) 포함
- 개발 시 JDK 필요, 실행만 할 때는 JRE로 충분
⚙️ 바이트코드 (Bytecode)와 플랫폼 독립성
- Java 컴파일러가 생성하는 중간 코드
- JVM이 설치된 모든 플랫폼에서 동일하게 실행 가능
- "Write Once, Run Anywhere" (WORA) 실현의 핵심
💡 느낀 점 / 참고 사항
- JVM 덕분에 Java가 플랫폼 독립적이라는 점이 매우 강력함
- JDK 설치는 Java 개발 환경 구축의 시작점
- JRE와 JDK의 차이를 명확히 이해하면 환경 설정이 쉬워짐
- JVM 내부 메모리 구조와 실행 과정에 대해 더 깊이 공부할 필요성 느낌