JVM이란?

naeganugu·2022년 7월 17일
0

강의를 들으면서 오버라이딩, 오버로딩, 상속... 어렴풋이 기억이 나는 개념들이 지나가서 제대로 복습을 한번 해봐야겠다고 생각하긴 했었다. 드디어 써보는 포스트! 2년 전이라 가물가물하니까,,,

  1. 자바에 대하여

C는 컴파일 방식으로 실행되고, Python은 인터프리터 방식으로 실행된다. 그렇다면 Java는?

Java는 compile + interpret 방식으로 실행된다.

  • test.java => Java Compiler => test.class => Java Interpreter
    이런 식으로 진행된다.

컴파일 방식으로 test.class 파일을 중간 코드(Byte code)로 생성하고, 이를 인터프리터가 한번 더 실행한다. 그런데 Java interpreter가 프로그램을 실행시키려면 가상머신이 필요한데, 이를 Java Virtual Machine, JVM이라고 부른다.

Java Virtual Machine(JVM):
📌 Java interpreter가 프로그램을 수행하는 환경/방식.
📌 즉, Java interpreter 안에 있는 머신을 말한다.
📌 Java 중간 프로그램을 실행해준다. Java Compiler가 .java 파일을 .class 파일(Byte code)로 변환하고 이 .class 파일을 JVM이 실행.

Byte code:
📌 Java 컴파일러가 만들어내는 중간 code
📌 Java interpreter에 의해 해석되는 code
📌 JVM의 기계어

따라서 Java를 실행하는 방법은 다음과 같다.

$ javac FirstJava.java // FirstJava.java는 파일 이름, FirstJava.class 파일이 생성됨.
$ java FirstJava // java는 자바 인터프리터고 FirstJava는 .class 파일을 의미.


오늘은 여기까지,,

profile
seungseung-zanggu

0개의 댓글