A Java programozási nyelvet az 1990-es évek elején fejlesztette ki a Sun Microsystem. A Java egy objektumorientált, egyszerű, hatékony, robusztus és általános célú programozási nyelv. Elsősorban webalapú vállalati alkalmazásokhoz használják. Eredetileg különböző platformokon futó beágyazott hálózati alkalmazásokhoz tervezték.
Amikor elkezdünk tanulni Java programozás , egy kérdés merül fel: a Java értelmezett vagy lefordított, vagy mindkettő. Ezt a kérdést az interjúalany is felteheti a Java-val kapcsolatos interjúiban. Tehát a válasz erre a kérdésre A Java értelmezett és lefordított is . Nem világos azonban, hogy a Java le van-e fordítva vagy értelmezve. Nem generál gépi kódot a forrásfájl fordítása után, és nem értelmezi a forrásfájlt úgy, hogy soronként végrehajtsa a kódutasításokat. A kérdés megválaszolásához meg kell értenünk, hogy a Java hogyan platformfüggetlen nyelv? Ez azt jelenti, hogy tudunk Java kódot írni egy platformra, és futtathatunk más platformokon, például hardveres operációs gépeken, változtatások nélkül. Tehát a Java platformfüggetlenségének megértése teljes választ ad erre a kérdésre.
A Java teljesen hordozható; ugyanaz a Java kód ugyanúgy fut a különböző platformokon, függetlenül a hardver kompatibilitástól vagy az operációs rendszertől.
A Java forráskódot először Java fordító segítségével bináris bájtkódba fordítják, majd ez a bájtkód fut a JVM-en (Java Virtual Machine), amely egy szoftver alapú értelmező. Tehát a Java értelmezettnek és lefordítottnak is tekinthető.
A lefordított bájtkód lehetővé teszi JVM legyen kicsi és hatékony, és gyorsan teljesít. Ezenkívül ez a bájtkód hordozhatóságot biztosít a Java programozási nyelvhez. Lehetővé teszi ennek a kódnak a végrehajtását bármely olyan JVM-en, amely megfelelően van implementálva a gépen, függetlenül a gép hardver- és szoftverkomponenseitől és konfigurációitól. Szinte minden webböngésző tartalmaz JVM-et a Java kisalkalmazáskód végrehajtásához.
Értsük meg ezt egy egyszerű Java programmal:
Egyszerű Java program és működik
Hozzon létre egy egyszerű .java fájlt kedvenc szövegszerkesztőjével:
Tedd bele az alábbi kódot:
class Basic{ public static void main(String args[]){ System.out.println('Hello JavaTpoint'); } }
És mentse el a fájlt.
Most nézze meg a könyvtárunkat, ahová a .java fájlt elmentettük.
Két lépést követve futtathatunk egy Java alkalmazást.
- Fordítsa le a Java programot
- Végezze el az alkalmazást
Fordítsa le a Java alkalmazást:
A Java program lefordításához hajtsa végre az alábbi parancsot:
javac Basic.java
A fenti parancs lefordítja a Java programot, és létrehozza a Java program .class fájlját, amely tartalmazza a Java alkalmazás bájtkódját.
A fenti kimenetből láthatjuk, hogy a Java program lefordítása után egy .class fájl jön létre. Ez a fájl a Java program bájtkódját tartalmazza. Ezt a bájtkódot bármelyik JVM-et megvalósító gépen végrehajthatjuk.
Az alkalmazás végrehajtása:
Az alkalmazás végrehajtásához hajtsa végre az alábbi parancsot:
java Basic
A fenti parancs végrehajtja a bájtkódot, és végrehajtja a program funkcióit:
A fenti kimenetből egy egyszerű nyilatkozatot nyomtattunk.
A Java program végrehajtása lépésről lépésre:
- Írjon Java kódot és mentse el a fájlt .Jáva
- Most ez a fájl a Java fordítóval lesz lefordítva, amely javac.
- A Java fordító lefordítja a Java fájlt, és létrehoz egy bájtkóddal rendelkező .class fájlt (ami valójában nem gépi kód, ellentétben a C fordítóval)
- Ez a generált bájtkód egy nem végrehajtható kód, és most értelmezőre van szüksége, hogy gépi kóddá alakítsa. Itt a JVM kezeli.
- Most a JVM ezt a bájtkódot hajtja végre a Java bájtkód végrehajtásához a gépen.
- Most a programunk végrehajtja a funkcionalitást, és megadja a kívánt kimenetet.
Következtetés:
A Java értelmezettnek és lefordítottnak is tekinthető. Java-fordítót (javac) és JVM-et (ami tulajdonképpen egy szoftver alapú értelmező) használ a Java-alkalmazások teljes futtatásához a gépen.