JDK vs JRE vs JVM sisse Java - Erinevus nende vahel
Peamised erinevused JDK, JRE ja JVM vahel
- JDK on tarkvaraarenduskomplekt, samas kui JRE on tarkvarapakett, mis vรตimaldab Java programmi kรคivitamiseks, samas kui JVM on baitkoodi tรคitmise keskkond.
- JDK tรคisvorm on Java Arenduskomplekt, samas kui JRE tรคisvorm on Java Runtime Environment, samas kui JVM-i tรคisvorm on Java Virtuaalne masin.
- JDK ja JRE on platvormist sรตltuvad, samas kui JVM on baitkoodi tasemel platvormist sรตltumatu, kuid sรตltub platvormipรตhistest rakendustest.
- JDK sisaldab tรถรถriistu arendamiseks, silumiseks jne. JRE sisaldab klassiteeke ja muid tugifaile, samas kui tarkvaraarenduse tรถรถriistu JVM ei sisalda.
- JDK on installijaga kaasas, teisest kรผljest sisaldab JRE keskkonda ainult lรคhtekoodi kรคivitamiseks, samas kui JVM on komplektis nii tarkvara JDK kui ka JRE-ga.
Mis on JDK?
JDK on tarkvaraarenduskeskkond, mida kasutatakse aplettide ja Java rakendusi. JDK tรคisvorm on Java Arenduskomplekt. Java arendajad saavad seda kasutada Windows, macOS, Solarisja Linux. JDK aitab neil kodeerida ja kรคivitada Java programmid. Samasse arvutisse on vรตimalik installida rohkem kui รผks JDK versioon.
Mis on JRE?
JRE on osa tarkvarast, mis on mรตeldud muu tarkvara kรคitamiseks. See sisaldab klassiteeke, laadimisklassi ja JVM-i. Lihtsamalt รถeldes, kui soovite joosta Java programm, mida vajate JRE. Kui te pole programmeerija, pole teil seda vaja installige JDK, vaid lihtsalt JRE jooksma Java programmid. Kuid kรตik JDK versioonid on komplektis Java Runtime Environment, nii et te ei pea JRE-d oma arvutisse eraldi alla laadima ja installima. JRE tรคisvorm on Java Tรถรถaja keskkond.
Mis on JVM?
JVM on mootor, mis pakub tรถรถkeskkonna juhtimiseks Java Kood vรตi rakendused. See teisendab Java baitkood masinakeelde. JVM on osa Java Run Environment (JRE). Seda ei saa eraldi alla laadida ja installida. JVM-i installimiseks peate installima JRE. JVM-i tรคisvorm on Java Virtuaalne masin.
Paljudes teistes programmeerimiskeeltes toodab kompilaator konkreetse sรผsteemi jaoks masinkoodi. Siiski Java kompilaator toodab koodi virtuaalse masina jaoks, mida nimetatakse JVM-iks.
Miks kasutada JDK-d?
Siin on JDK kasutamise olulised pรตhjused.
- JDK sisaldab kirjutamiseks vajalikke tรถรถriistu Java programmid ja JRE nende tรคitmiseks.
- See sisaldab kompilaatorit, Java rakenduste kรคivitaja, Appletviewer jne.
- Kompilaator teisendab sisse kirjutatud koodi Java baitkoodiks.
- Java rakenduste kรคivitaja avab JRE, laadib vajaliku klassi ja kรคivitab selle pรตhimeetodi.
Miks kasutada JRE-d?
Siin on JRE kasutamise olulised pรตhjused:
- JRE sisaldab klassiteeke, JVM-i ja muid toetavaid faile. See ei sisalda รผhtegi tรถรถriista Java arendus nagu silur, kompilaator jne.
- See kasutab olulisi paketiklasse, nagu matemaatika, swingetc, util, lang, awt ja kรคitusaegsed teegid.
- Kui peate jooksma Java aplette, siis tuleb teie sรผsteemi installida JRE.
Miks JVM?
Siin on JVM-i kasutamise peamised pรตhjused.
- JVM pakub platvormist sรตltumatut tรคitmisviisi Java lรคhtekood.
- Sellel on palju teeke, tรถรถriistu ja raamistikke.
- Kui sa jooksed Java saate tรถรถtada mis tahes platvormil ja sรครคsta palju aega.
- JVM-iga on kaasas JIT (Just-in-Time) kompilaator, mis teisendab Java lรคhtekoodi madala taseme masinakeelde. Seetรตttu tรถรถtab see tavalise rakendusena kiiremini.
JDK omadused
Siin on JDK olulised funktsioonid:
- See vรตimaldab teil hallata mitut laiendust รผhes pรผรผdmisplokis.
- JDK sisaldab kรตiki JRE funktsioone.
- See sisaldab arendustรถรถriistu, nagu kompilaator, silur jne.
- JDK pakub keskkonda arendamiseks ja teostamiseks Java lรคhtekood.
- Seda saab paigaldada Windows, Unixi ja Maci operatsioonisรผsteemid.
- Teemantoperaatorit saab tรคpse liidese kirjutamise asemel kasutada รผldise tรผรผbiliidese mรครคramiseks.
JRE omadused
Siin on JRE olulised funktsioonid:
- Java Kรคituskeskkond on tรถรถriistade komplekt, mille abil JVM tegelikult tรถรถtab.
- JRE sisaldab juurutustehnoloogiat, sealhulgas Java Web Start ja Java Sisse panema.
- Arendajad saavad JRE-s lรคhtekoodi hรตlpsalt kรคivitada, kuid ta ei saa seda kirjutada ega kompileerida Java programmi.
- See sisaldab integratsiooniteeke nagu Java Andmebaasi รผhenduvus (JDBC), kaugmeetodi kutsumine (RMI), Java Nimede andmise ja kataloogi liides (JNDI) ja palju muud.
- JRE-l on JVM ja Java HotSpoti virtuaalmasina klient.
JVM-i omadused
Siin on JVM-i olulised funktsioonid:
- See vรตimaldab teil kรคivitada rakendusi pilvekeskkonnas vรตi oma seadmes.
- Java Virtuaalmasin teisendab baitkoodi masinaspetsiifiliseks koodiks.
- See pakub pรตhilisi Java funktsioone, nagu mรคluhaldus, turvalisus, prรผgikoristus ja palju muud.
- JVM kรคivitab programmi, kasutades poolt antud teeke ja faile Java Tรถรถaja keskkond.
- Nii JDK kui ka JRE sisaldavad Java Virtuaalne masin.
- See vรตib kรคivitada java programmi ridade kaupa, seetรตttu nimetatakse seda ka interpretaatoriks.
- Nรคiteks JVM on hรตlpsasti kohandatav, sellele saab eraldada minimaalse ja maksimaalse mรคlu.
- See on riistvarast ja operatsioonisรผsteemist sรตltumatu. Seega saate Java-programmi kirjutada รผks kord ja kรคivitada kรตikjal.
Kuidas JDK tรถรถtab?

Siin on JDK olulised komponendid:
- JDK ja JRE: JDK vรตimaldab programmeerijatel luua tuuma Java programmid, mida saab kรคivitada JRE, mis hรตlmas JVM-i ja klassiteeke.
- Klassi raamatukogud: See on rรผhm dรผnaamiliselt laaditavaid teeke, mis Java programm saab kรคivitamise ajal helistada.
- Koostajad: On Java programm, mis aktsepteerib arendajate tekstifaile ja kompileerib nendesse Java klassi fail. See on kompilaatori antud tavaline vรคljundvorm, mis sisaldab Java baidi kood. sisse Java, on esmane kompilaator Javac.
- Silujad: Silur on a Java programm, mis vรตimaldab arendajatel testida ja siluda Java programme.
- JavaDok: JavaDoc on Sun Microsystemsi dokumentatsioon Java. JavaDoci saab kasutada API dokumentatsiooni genereerimiseks lรคhteprogrammist HTML-failis
Kuidas JRE tรถรถtab?
JRE-l on JVM-i eksemplar, raamatukoguklassid ja arendustรถรถriistad. Kui kirjutate ja koostate Java koodi, genereerib kompilaator baitkoodiga klassifaili.
Siin on JRE olulised komponendid:
- Klassilaadurid: Klassilaadur laadib erinevaid klasse, mis on vajalikud a jooksmiseks Java programm. JVM kasutab kolme klassilaadurit, mida nimetatakse bootstrap-klassi laaduriks, laiendusklassi laaduriks ja sรผsteemiklassi laaduriks.
- Baiti koodi kontrollija: Baitkoodi kontrollija kontrollib baitkoodi nii, et kood ei segaks tรตlgendajat.
- Tรตlk: Kui klassid on laaditud ja kood on kinnitatud, loeb tรตlk koodi rida rea โโhaaval.
- Tรถรถaeg: Kรคitusaeg on sรผsteem, mida kasutatakse peamiselt programmeerimisel, et kirjeldada ajaperioodi, mille jooksul konkreetne programm tรถรถtab.
- Riistvara: Kui olete koostanud Java algkood, tรถรถtab see kindlal riistvaraplatvormil.
Sel viisil Java programm tรถรถtab JRE-s.
Kuidas JVM tรถรถtab?
Siin on JVM-i olulised komponendid:
1) Klassilaadur
Klassilaadur on alamsรผsteem, mida kasutatakse klassifailide laadimiseks. See tรคidab kolme peamist funktsiooni, nimelt. Laadimine, linkimine ja lรคhtestamine.
2) meetodi ala
JVM-i meetodiala salvestab klassi struktuuri, nรคiteks metaandmed, selle koodi Java meetodid ja pidev kรคitusaja bassein.
3) hunnik
Kรตik objektid, massiivid ja eksemplarimuutujad salvestatakse hunnikusse. Seda mรคlu jagatakse mitme lรตime vahel.
4) JVM keele virnad
Java Language Stacks salvestab kohalikke muutujaid ja selle osatulemusi. Igal lรตimel on oma JVM-i keelepinn, mis luuakse lรตime loomisega samaaegselt. Meetodi kutsumisel luuakse uus kaader ja see eemaldatakse, kui meetodi kutsumisprotsess on lรตppenud.
5) arvutiregistrid
PC-registrid salvestavad aadressi Java virtuaalmasina kรคsk, mida praegu tรคidetakse. sisse Java, igal lรตimel on eraldi arvutiregister.
6) Native Method Stacks
Looduslike meetodite virnad sisaldavad natiivse koodi juhiseid, olenevalt natiivsest raamatukogust. See eraldab mรคlu natiivsetele hunnikutele vรตi kasutab mis tahes tรผรผpi pinu.
7) Tรคitmismootor
See on teatud tรผรผpi tarkvara, mida kasutatakse tarkvara, riistvara vรตi terviklike sรผsteemide testimiseks. Testimismootor ei sisalda kunagi teavet testitud toote kohta.
8) Native Method liides
Native Method Interface on programmeerimisraamistik. See vรตimaldab Java kood, mis tรถรถtab JVM-is, et helistada teekide ja omarakenduste kaudu.
9) Native Method Libraries
Native Libraries on pรตlisraamatukogude (C, C++), mida tรคitmismootor vajab.
Erinevus JDK, JRE ja JVM vahel
Siin on peamised erinevused JDK ja JRE ja JVM vahel.
| JDK | JRE | FMV |
|---|---|---|
| JDK tรคisvorm on Java Arenduskomplekt. | JRE tรคisvorm on Java Tรถรถaja keskkond. | JVM-i tรคisvorm on Java Virtuaalne masin. |
| JDK on tarkvaraarenduskomplekt rakenduste arendamiseks Java. | See on tarkvarapakett, mis pakub Java klassi raamatukogud koos kรคitamiseks vajalike komponentidega Java kood. | JVM teostab Java baidi koodi ja pakub keskkonda selle tรคitmiseks. |
| JDK on platvormist sรตltuv. | JRE sรตltub ka platvormist. | JVM on platvormist sรตltumatu. |
| See sisaldab tรถรถriistu Java-koodi arendamiseks, silumiseks ja jรคlgimiseks. | See sisaldab klassiteeke ja muid tugifaile, mida JVM programmi kรคivitamiseks vajab. | Tarkvaraarenduse tรถรถriistu JVM ei sisalda. |
| See on JRE superkomplekt | See on JDK alamhulk. | JVM on JRE alamhulk. |
| JDK vรตimaldab arendajatel luua Java programmid, mida saavad kรคivitada ja kรคivitada JRE ja JVM. | JRE on osa Java mis loob JVM-i. | On Java platvormi komponent, mis kรคivitab lรคhtekoodi. |
| JDK on installijaga kaasas. | JRE sisaldab ainult lรคhtekoodi kรคivitamise keskkonda. | JVM on komplekteeritud nii tarkvara JDK kui ka JRE-ga. |
