개발 공부 기록/01. JAVA

[Java] - JDK, JRE, JVM 이란?

박세류 2023. 12. 3. 12:44

1. 컴파일, 컴파일러, 바이트코드란?

  • 컴파일: 인간이 이해하기 쉬운 언어를 기계어로 번역하는 과정
  • 컴파일러: 컴파일을 하는 프로그램
  • 바이트 코드 : 0과 1로 이루어진 코드, 컴퓨터가 이해할 수 있다.

 

2. JVM (Java Virtual Machine)

JVM은 바이트코드와 운영체제 사이에서 둘을 호완시켜 주는 역할을 한다.

 

즉, 운영체제 마다 컴파일러가 다른 다른 언어들과는 다르게, JVM은 바이트코드를 각각의 운영체제에 맞게 번역해준다.

따라서 인기가 많은 JVM은 JAVA 외에 다른 언어에서도 사용한다.

 

 

3. JDK > JRE > JVM

  • JRE = JVM + 자바 프로그램 (실행에 필요한 라이브러리 파일 스캐너 아웃풋 파일처리 등등등)
  • JDK = JRE + 개발을 위한 도구 ( javac (컴파일러) , 디버그 도구 ) 등이 포함되어 있다.

 

즉, 우리가 늘 설치하는 JDK를 설치하면 JRE 및 JVM도 설치된다.

JDK 버전이 곧 JAVA의 버전이다.

 

4. JAVA의 버전

  •  아이폰 처럼 버전이 업데이트 될때마다 기능이 추가된다. 기존 기능이 사라질 수도 있다.
  • Java 5 에는 제네릭 지원
  • Java 8 에는 람다 지원

 

5. LTS(Long Time Support) 란?

오래 써도 되는 버전, 자바 8과 자바 11 등이 LTS이며, 배워두면 오래오래 쓸 수 있는 버전이다.

 

 

6. JAVA의 종류

Oracle JDK / AZUL JDK / Open JDK 이렇듯 JDK도 종류가 다양하다.

 

간략하게 정리하자면 Oracle JDK는 Oracle에 만든 JDK, Open JDK는 썬 마이크로시스템즈 시절에 만들어진 것

기능 자체는 모두 동일하나 성능과 비용에 약간의 차이가 있을 수 있다.

728x90

'개발 공부 기록 > 01. JAVA' 카테고리의 다른 글

[Java] - Build, Gradle, Maven이란?  (1) 2023.12.03