Java 언어는 해석형 언어라고 할 수 있는데, 컴파일된 Java 코드는 기계가 인식할 수 있는 언어가 아니라 바이트코드이므로 직접 실행할 수 없고 다양한 플랫폼에서 실행하려면 jvm 해석이 필요하기 때문입니다. .
Java 언어
Java 언어는 모든 Java 코드를 컴파일해야 하기 때문에 컴파일되었다고 할 수 있으며, .java는 컴파일 없이는 쓸모가 없습니다. 코드는 컴파일 후에 직접 실행할 수 없습니다. JVM에서 해석되어 실행되므로 해석됩니다.
그러나 현재 JVM에는 효율성을 위한 일부 JIT 최적화 기능이 있습니다. .class의 바이너리 코드를 로컬 코드로 컴파일하여 직접 실행하게 되므로 다시 컴파일하게 됩니다.
C나 C++처럼 한번의 컴파일 후에 운영체제가 이해할 수 있는 타입으로 직접 컴파일하고 바로 실행할 수 있으므로 컴파일된 언어입니다. 두 번째 처리가 없으면 Java는 먼저 컴파일러에 의해 .class 유형의 파일로 컴파일됩니다. 그런 다음 가상 머신(JVM)을 통해 .class 파일에서 한 줄을 읽습니다. 각 행을 해석하고 실행합니다. 따라서 해석된 언어이며 Java는 여러 운영 체제에 대해 서로 다른 JVM을 가지고 있으므로 Java는 진정한 크로스 플랫폼입니다.
Java의 가상 머신 메커니즘
(1) Java 언어 컴파일 -->설명--->실행 프로세스
(2)Java 가상 머신
컴파일 컴파일된 언어 및 해석 언어
컴파일 언어: 완성된 모든 소스 프로그램을 바이너리 코드로 컴파일하여 실행 가능한 프로그램입니다. 그런 다음 프로그램을 직접 실행할 수 있습니다.
통역언어 : 준비된 소스 프로그램의 한 문장을 번역한 뒤, 그 문장을 끝까지 실행해보세요!
차이점
컴파일된 언어는 실행 속도가 빠르고 효율성이 높습니다. 컴파일러에 의존하며 크로스 플랫폼이 적습니다.
통역된 언어는 실행 속도가 느리고 효율성이 낮으며 통역사에 의존하며 크로스 플랫폼 성능이 좋습니다.
요약
개인적으로 Java는 해석형 언어라고 생각합니다. Java도 컴파일해서 .class 파일로 만들어야 하지만 기계가 인식할 수 있는 언어가 아니라 바이트코드와 궁극적으로 JVM이 필요합니다. 설명해야만 다양한 플랫폼에서 실행될 수 있으며, 이는 Java가 크로스 플랫폼인 이유이기도 합니다. 그래서 자바는 컴파일과 인터프리터를 모두 한다고 할 수 있지만, 개념적 정의로 분류해야 한다면 자바를 인터프리터 언어로 분류해야 하는 게 아닐까 걱정됩니다.
위 내용은 자바는 어떤 언어에 속하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!