Java >> Java tutorial >  >> JVM

Hvad er JVM, JRE og JDK i Java

Dette indlæg giver en kort forklaring af JVM, JRE og JDK i Java. Før du går ind i den forklaring, bør du også vide, hvad der er bytekode i Java.

Hvad er bytekode i Java

Når et Java-program kompileres, kompileres det ikke direkte til maskinsprog, men til en mellemkode kendt som bytekode. Bytecode er platformsuafhængig, og den skal stadig fortolkes og udføres af den JVM, der er installeret på den specifikke platform.

For eksempel lad os sige, at du har en Java-fil kaldet "Test.java". Når du kompilerer denne fil får du en fil kaldet "Test.class", som er bytekoden til din Java-fil. JVM fortolker og udfører denne Test.class-fil.

JVM

JVM betyder Java Virtual Machine er et abstrakt lag mellem et Java-program og den platform, som Java Program kører på. JVM er platformafhængig og forskellige implementeringer af JVM'er er tilgængelige for specifikke platforme.

Et Java-program kan kun køre på en bestemt platform, når-

  • JVM er blevet implementeret til en platform.
  • JVM er blevet installeret på en platform.

JVM'en forstår ikke Java-programmet, mens vi skriver det, det forstår ".class"-filen, som vi får ved at kompilere .java-filen. Denne ".class"-fil indeholder bytekoden, der kan forstås af JVM. Det er på grund af JVM, at Java kaldes et "bærbart sprog" (skriv én gang, kør hvor som helst)

  • Se JVM Run-Time Data Areas - Java Memory Allocation for bedre forståelse af JVM.

Følgende figur viser abstraktionen leveret af JVM ved at sidde mellem bytekoden og den specifikke platform.

JRE

JRE betyder Java Runtime Environment leverer bibliotekerne, Java Virtual Machine og andre komponenter til at køre applets og applikationer skrevet i Java-programmeringssproget.

Den kompilerede bytekode kører ikke direkte på CPU, JVM sidder imellem og fortolker bytekoden til et læsbart maskinsprog for CPU'en. Det er faktisk JRE, der gør det muligt for Java bytecode at køre på enhver platform. Bytekoder, som fortolkes af JVM'en, kalder simpelthen klasser fundet i JRE'en, når de skal udføre handlinger, de ikke selv kan udføre

JDK

JDK betyder Java Development Kit er et supersæt af JRE og indeholder alt, hvad der er i JRE, plus udviklingsværktøjer såsom kompilatorer og debuggere, der er nødvendige for at udvikle applets og applikationer.

Det er alt for dette emne Hvad er JVM, JRE og JDK i Java . Hvis du er i tvivl eller har forslag til at komme med, så smid en kommentar. Tak!


Java tag