JVM: 자바 가상 머신
여러가지의 기기위에 Java 프로그램을 실행시킬 수 있는 가상의 기기를 만들어주는것
바이트 코드(.class): Java 프로그램 변환코드
사용자가 작성한 코드가 운영체제가 읽을 수 있는 코드로 Java 컴파일러가 변환한 코드
Java 컴파일러: java -> class
유저가 작성한 자바 코드(.java 파일)을 운영체제가 읽을 수 있는 바이트 코드(.class)
인터프리터: java .class 코드 해석기
운영체제가 읽은 바이트 코드를 기계가 실행할 수 있는 기계어로 변역
JIT(Just In Time) 컴파일러: 빠른 Java .class 코드 해석기
인터프리터의 효율을 높여주는 서포터 해석기
메모리 영역: Java 데이터를 저장하는 영역
운영체제로 부터 JVM이 할당받은 메모리 영역
클래스 로더: java .class 바이트 코드를 메모리 영역에 담는 운반기
JVM으로 class 코드를 불러와서 메모리에 저장
가비지 컬렉터: Java 청소기
JDK(Java Dev. Kit) - 자바 개발 키트(Java 프로그램을 개발해주는 키트)가 javac 명령을 통해 .java 파일을 실행가능한 .class로 변환해줍니다.
+디버깅 기능도 포함