JVM, JRE, JDK 차이

KIMA·2022년 6월 27일

java

목록 보기
1/11
post-thumbnail

JVM (Java Virtual Machine)란?


: 자바를 실행하기 위해 반드시 필요한 가상 프로그램

  • 컴파일된 바이너리 코드(.class)를 실행할 때, 프로그램이 실행되는 OS에 맞게 컴퓨터가 해석할 수 있는 기계어로 변환해줌

Java Application과 일반 Application의 구조 차이

  • 일반 Application은 OS와 바로 맞붙어 있기에 OS 종속적
    • Application을 OS의 종류에 따라 변경해야함
    • 예) C언어는 OS의 종류가 달라지면 해석하지 못함
  • Java Application은 다양한 OS를 지원하는 JVM과 소통하므로 OS 독립적
    • Application을 OS의 종류와 상관없이 동일한 코드로 실행 가능

JRE (Java Runtime Environment)란?


: JVM + JVM이 자바 프로그램을 실행할 때 필요한 라이브러리 파일들과 기타 파일들

  • 따라서, JRE 설치로 자바 프로그램을 실행할 수 있음

JDK (Java Development Kit)란?


: JRE + 프로그래머가 개발을 위해 필요한 도구 (java 컴파일용인 javac, java, java 디버깅용인 jdb, 서로 연관 있는 클래스들을 묶어주는 jar 등)

  • 종류 : Oracle JDK (상업적 용도로는 유료, 개인은 무료), Open JDK (무료)

JVM VS JRE VS JDK


profile
안녕하세요.

0개의 댓글