자바 공부 전 알아두면 좋은 것들1(JDK, JRE, JVM)

집밥이선생·2024년 7월 11일
0

🖥️ 컴파일

인간이 이해하기 쉬운 언어를 0,1(바이트 코드 == 바이너리 코드 == 기계어)로 변환
컴파일러 : 컴파일을 하는 프로그램

0,1의 조합은 운영체제마다 다름 -> C언어같은 경우 윈도우, 맥, 리눅스 각각 운영체제마다 C언어 컴파일러가 필요


JVM 등장

JAVA의 경우 운영체제에 바로 가는 게 아니라 윈도우 위 JVM에 간다. 따라서 JVM을 거쳐가기 때문에 컴파일러 하나로 OK🙌
즉, JAVA가 알아서 번역해줌

JVM은 똑같은 JAVA 바이트 코드를 OS마다 다르게 해석해주는구나!


💡JVM, JRE, JDK

JVM(자바가상머신, Java Virtual Machine)

  • OS별로 존재
  • 바이너리 코드를 읽기, 검증, 실행

JRE(자바실행환경, Java Runtime Environment)

  • JVM + 자바 프로그램(라이브러리 등)
  • JVM 실행환경 구현

JDK(자바개발도구, JAVA Development Kit)

  • JRE + 개발을 위한 도구
  • 컴파일러, 디버그 도구 등
    컴파일을 한 결과물을 JVM이 실행시켜준다 -> 누군가가 컴파일을 해줘야 함 -> 컴파일러의 역할

🧨Point

  • JAVA는 동일한 컴파일 이후, 적절한 JVM이 0,1을 컴퓨터에게 전달

  • JDk > JRE > JVM

profile
쌀을 좋아하는 개발자입니다.

0개의 댓글