Java-kääntäjän ja Java-virtuaalikoneen ymmärtäminen - Osa 4


Tähän mennessä olemme käyneet läpi Javan ja luokan, päämenetelmän ja silmukkaohjauksen työ- ja koodirakenteen Javassa. Tässä viestissä näemme, mikä on Java-kääntäjä ja Java-virtuaalikone. Mihin ne on tarkoitettu ja heidän roolinsa.

Mikä on Java Compiler

Java on vahvasti kirjoitettu kieli, mikä tarkoittaa, että muuttujan täytyy sisältää oikeanlaista dataa. Vahvasti kirjoitetussa kielessä muuttuja ei voi sisältää väärää tietotyyppiä. Tämä on turvaominaisuus, joka on erittäin hyvin toteutettu Java-ohjelmointikielessä.

Java-kääntäjä on vastuussa muuttujien tarkistamisesta tietotyypin säilytysten rikkomusten varalta. Muutama poikkeus saattaa syntyä ajon aikana, mikä on pakollinen Javan dynaamiselle sidosominaisuudelle. Java-ohjelman ajon aikana se voi sisältää uusia objekteja, joita ei ollut aiemmin olemassa, joten niillä on jonkin verran joustavuutta. Muuttujan tietotyypeissä sallitaan muutamia poikkeuksia.

Java-kääntäjä asettaa suodattimen niille koodinpätkille, joita ei koskaan käännetä kommentteja lukuun ottamatta. Kääntäjä ei jäsennä kommentteja vaan jätä se sellaisenaan. Java-koodi tukee kolmenlaisia kommentteja ohjelman sisällä.


1. /* COMMENT HERE */
2. /** DOCUMENTATION COMMENT HERE */
3. // COMMENT HERE

Mikä tahansa, joka sijoitetaan väliin /* ja */ tai /** ja */ tai jälkeen Java-kääntäjä ohittaa //.

Java Compiler on vastuussa syntaksikääntörikkomusten tiukasta tarkistamisesta. Java Compiler on suunniteltu tavukoodin kääntäjäksi eli se luo luokkatiedoston varsinaisesta ohjelmatiedostosta, joka on kirjoitettu puhtaasti tavukoodilla.

Java Compiler on turvallisuuden ensimmäinen vaihe. Se on ensimmäinen puolustuslinja, jossa tarkistetaan muuttujan virheellisen tietotyypin tarkistaminen. Väärä tietotyyppi voi vahingoittaa ohjelmaa ja sen ulkopuolella. Myös kääntäjä tarkistaa, yrittääkö jokin koodinpätkä kutsua rajoitettua koodinpalaa, kuten yksityinen luokka. Se rajoittaa koodin/luokan/kriittisten tietojen luvatonta käyttöä.

Java-kääntäjä tuottaa tavukoodeja/luokkatiedostoja, jotka ovat alusta- ja arkkitehtonisesti neutraaleja ja jotka edellyttävät JVM:n suorittamista, ja se toimii kirjaimellisesti millä tahansa laitteella/alustalla/arkkitehtuurilla.

Mikä on Java Virtual Machine (JVM)

Java Virtual Machine on seuraava suojauslinja, joka asettaa ylimääräisen kerroksen Java-sovelluksen ja käyttöjärjestelmän väliin. Se myös tarkistaa luokkatiedoston, jonka suojaus on tarkastettu ja jonka Java Compiler on kääntänyt, jos joku on peukaloinut luokkatiedostoa/tavukoodia rajoittaakseen pääsyn luvattomiin kriittisiin tietoihin.

Java Virtual Machine tulkitsee tavukoodin lataamalla luokkatiedoston konekieleen.

JVM vastaa toiminnoista, kuten Load and Store, Aritmeettinen laskenta, Tyyppimuunnos, Objektin luominen, Objektin manipulointi, Ohjauksen siirto, Heittopoikkeus jne.

Java-malli, jossa Java Compiler kokoaa koodin calssfile/tavukoodeiksi ja sitten Java Virtual Machine suorittaa luokkatiedoston/tavukoodin. Tämä malli varmistaa, että koodi toimii nopeasti ja lisäkerros varmistaa turvallisuuden.

Joten mitä mieltä olet – Java Compiler tai Java Virtual Machine suorittaa tärkeämmän tehtävän? Java-ohjelman on suoritettava molempien pinnan läpi (kääntäjä ja JVM).

Tämä viesti tiivistää Java-kääntäjän ja JVM:n roolin. Kaikki ehdotuksesi ovat tervetulleita alla oleviin kommentteihin. Työskentelemme seuraavan postauksen parissa "Javan objektiorientoitunut lähestymistapa". Pysy kuulolla siihen asti ja ole yhteydessä TecMintiin. Tykkää ja jaa meistä ja auta meitä leviämään.