JVM : Java Virtual Machine
자바 가상머신이다.
.java로 부터 만들어지는 바이너리 파일. 즉, .class파일을 실행할 수 있다.
유일하게 플랫폼에 의존적인 부분인데
그럼에도 불구하고 바이너리 파일의 생성이 리눅스인지 윈도우인지는 관계없이
어느 바이너리 파일이든 jvm을 통과할 수 있다.
단지 번역되는 결과물이 다를 뿐이다.
이 부분은 리눅스와 윈도우의 기계어가 다르게 구성되어지기 때문에 단점이 아닌 어쩔 수 없는 부분이다.
JRE : Java Runtime Environment
자바 실행환경이다.
자바도 파이썬처럼 프로그램을 실행할 때 필요한 패키지(라이브러리)를 가지고 있어야 실행이 된다.
이러한 환경을 구성하는 부분을 JRE라 하며 JVM이 실행되기 위한 실행환경이기도 하다.
JDK : Java Development Kit
자바 개발 도구이다.
실행환경과 달리 자바로 개발하는 데 사용한 도구들로
javac(자바 컴파일러), java, JRE 또한 이곳에 포함된다.