산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

JDK 대 JRE 대 JVM:주요 차이점

JDK란 무엇입니까?

JDK는 애플릿과 자바 애플리케이션을 만드는 데 사용되는 소프트웨어 개발 환경입니다. JDK의 전체 형태는 Java Development Kit입니다. Java 개발자는 Windows, macOS, Solaris 및 Linux에서 사용할 수 있습니다. JDK는 Java 프로그램을 코딩하고 실행하는 데 도움이 됩니다. 동일한 컴퓨터에 두 개 이상의 JDK 버전을 설치할 수 있습니다.

이 자습서에서는 다음을 배우게 됩니다.

JRE란 무엇입니까?

JRE는 다른 소프트웨어를 실행하도록 설계된 소프트웨어입니다. 여기에는 클래스 라이브러리, 로더 클래스 및 JVM이 포함됩니다. 간단히 말해서 Java 프로그램을 실행하려면 JRE가 필요합니다. 프로그래머가 아니라면 JDK를 설치할 필요가 없고 JRE만 있으면 Java 프로그램을 실행할 수 있습니다. 하지만 모든 JDK 버전에는 Java Runtime Environment가 번들로 제공되므로 JRE를 PC에 별도로 다운로드하여 설치할 필요가 없습니다. JRE의 완전한 형태는 Java Runtime Environment입니다.

JVM이란 무엇입니까?

JVM은 Java 코드 또는 애플리케이션을 구동하기 위한 런타임 환경을 제공하는 엔진입니다. Java 바이트 코드를 기계어로 변환합니다. JVM은 JRE(Java Run Environment)의 일부입니다. 별도로 다운로드하여 설치할 수 없습니다. JVM을 설치하려면 JRE를 설치해야 합니다. JVM의 전체 형태는 Java Virtual Machine입니다.

다른 많은 프로그래밍 언어에서 컴파일러는 특정 시스템에 대한 기계어 코드를 생성합니다. 그러나 Java 컴파일러는 JVM이라고 하는 가상 머신용 코드를 생성합니다.

주요 차이점

JDK를 사용하는 이유

JDK를 사용하는 중요한 이유는 다음과 같습니다.

JRE를 사용하는 이유

JRE를 사용하는 중요한 이유는 다음과 같습니다.

왜 JVM인가?

JVM을 사용하는 중요한 이유는 다음과 같습니다.

JDK의 기능

다음은 입니다. JDK의 중요한 기능:

JRE의 특징

다음은 입니다. JRE의 중요한 기능:

JVM의 기능

다음은 JVM의 중요한 기능입니다.

JDK는 어떻게 작동합니까?

<중앙>

<그림>

다음은 JDK의 중요한 구성 요소입니다.

JRE는 어떻게 작동합니까?

<중앙>

<그림>

JRE에는 JVM 인스턴스, 라이브러리 클래스 및 개발 도구가 있습니다. 자바 코드를 작성하고 컴파일하면 컴파일러는 바이트 코드가 있는 클래스 파일을 생성합니다.

JRE의 중요한 구성 요소는 다음과 같습니다.

이런 식으로 Java 프로그램은 JRE에서 실행됩니다.

JVM은 어떻게 작동합니까?

<중앙>

<그림>

다음은 JVM의 중요한 구성 요소입니다.

1) 클래스 로더

클래스 로더는 클래스 파일을 로드하는 데 사용되는 하위 시스템입니다. 그것은 세 가지 주요 기능을 수행합니다. 로드, 연결 및 초기화.

2) 방법 영역

JVM 메소드 영역은 메타데이터, 자바 메소드용 코드, 상수 런타임 풀과 같은 클래스 구조를 저장합니다.

3) 힙

모든 개체, 배열 및 인스턴스 변수는 힙에 저장됩니다. 이 메모리는 여러 스레드에서 공유됩니다.

4) JVM 언어 스택

Java 언어 스택은 지역 변수와 부분 결과를 저장합니다. 모든 스레드에는 스레드가 생성될 때 동시에 생성되는 자체 JVM 언어 스택이 있습니다. 메소드가 호출되면 새로운 프레임이 생성되고 메소드 호출 프로세스가 완료되면 프레임이 제거됩니다.

5) PC 레지스터

PC 레지스터는 현재 실행 중인 JVM(Java Virtual Machine) 명령어의 주소를 저장합니다. Java에서 각 스레드에는 별도의 PC 레지스터가 있습니다.

6) 기본 메소드 스택

네이티브 메서드 스택은 네이티브 라이브러리에 따라 네이티브 코드의 명령을 보유합니다. 네이티브 힙에 메모리를 할당하거나 모든 유형의 스택을 사용합니다.

7) 실행 엔진

소프트웨어, 하드웨어 또는 전체 시스템을 테스트하는 데 사용되는 소프트웨어 유형입니다. 테스트 실행 엔진은 테스트된 제품에 대한 정보를 절대 전달하지 않습니다.

8) 네이티브 메소드 인터페이스

Native Method Interface는 프로그래밍 프레임워크입니다. JVM에서 실행되는 Java 코드가 라이브러리 및 기본 애플리케이션에서 호출할 수 있도록 합니다.

9) 네이티브 메소드 라이브러리

네이티브 라이브러리는 실행 엔진에 필요한 네이티브 라이브러리(C, C++)의 모음입니다.

JDK, JRE, JVM의 차이점

다음은 JDK와 JRE, JVM의 주요 차이점입니다.

JDK JRE JVM
JDK의 전체 형태는 Java Development Kit입니다. JRE의 전체 형식은 Java Runtime Environment입니다. JVM의 전체 형태는 Java Virtual Machine입니다.
JDK는 Java로 애플리케이션을 개발하기 위한 소프트웨어 개발 키트입니다. Java 코드 실행에 필요한 구성요소를 Java 클래스 라이브러리에 제공하는 소프트웨어 번들입니다. JVM은 자바 바이트 코드를 실행하고 이를 실행할 수 있는 환경을 제공합니다.
JDK는 플랫폼에 따라 다릅니다. JRE도 플랫폼에 따라 다릅니다. JVM은 플랫폼에 크게 의존합니다.
자바 코드를 개발, 디버깅 및 모니터링하기 위한 도구가 포함되어 있습니다. JVM이 프로그램을 실행하는 데 필요한 클래스 라이브러리 및 기타 지원 파일을 포함합니다. 소프트웨어 개발 도구는 JVM에 포함되어 있지 않습니다.
JRE의 상위 집합입니다. JDK의 하위 집합입니다. JVM은 JRE의 하위 집합입니다.
JDK를 사용하면 개발자가 JRE 및 JVM에서 실행 및 실행할 수 있는 Java 프로그램을 만들 수 있습니다. JRE는 JVM을 생성하는 Java의 일부입니다. 소스 코드를 실행하는 자바 플랫폼 컴포넌트입니다.
JDK는 설치 프로그램과 함께 제공됩니다. JRE는 소스 코드를 실행하기 위한 환경만 포함합니다. JVM은 소프트웨어 JDK와 JRE 모두에 번들로 제공됩니다.

java

  1. 자바 JDK, JRE 및 JVM
  2. 자바 연산자
  3. 자바 주석
  4. 자바 for-each 루프
  5. 자바 인터페이스
  6. 자바 리소스 사용
  7. 자바 주석
  8. Java 10 - 통합 JDK 포리스트
  9. Java 10 - 스레드 로컬 핸드셰이크
  10. Java 로그인:고려해야 할 주요 팁