고코딩

[JAVA] JDK JRE JVM 관계 본문

JAVA

[JAVA] JDK JRE JVM 관계

고코딩 2021. 4. 5. 14:02

  • JVM

    • Java Virtual Machine의 약어
    • 자바 프로그램을 컴파일 해서 나온 결과인 바이트코드를 실행시켜주는 가상 머신이다.
    • 어플리케이션을 실행시켜주는 가상머신을 사용함으로써, 윈도우와 리눅스/맥 등 다양한 환경에서 언제나 동일하게 실행되도록 할 수 있다는 장점을 가지고 있다.
    • 각 운영체제별 JVM은 자바측에서 개발하여 배포하므로, 프로그래머는 운영체제에 관계없이 프로그램을 개발할 수 있어, 한번 컴파일 됐으면 운영체제에 따라 다시 컴파일할 필요가 없는 WORA(Write Once Run Anywhere)을 만족한다.
  • JRE

    • 자바 실행환경을 의미한다.
    • JVM을 동작하는데 필요한 각종 자바 라이브러리를 담고 있다.
  • JDK

    • Java Development Kit의 약자로, 자바 개발 키트를 의미한다.
    • JRE와 javac 등의 컴파일러, 디버거등을 포함하는 프로그램이다.

JVM을 사용하기 위한 라이브러리가 JRE이며, 일반적인 자바 프로그램을 실행하기 위해 사용되는 것이 JRE이다. JDK는 JRE를 포함하고 있으면, 컴파일러와 디버거등이 포함되어있다.

개발자라면 당연이 컴파일과 디버깅을 해야하므로 JDK를 설치해야 한다

'JAVA' 카테고리의 다른 글

[JAVA] 람다는 무엇일까?  (0) 2021.05.13
[JAVA] Collection 관계  (0) 2021.04.07
[JAVA] UUID의 개념과 간단 사용법  (0) 2021.02.22
[JAVA] String에서의 ==와 equals() 차이점  (0) 2021.01.12
[JAVA] 자바로 해시테이블 구현  (0) 2021.01.11