Weboldal keresés

A Java működése és a Java kódstruktúrájának megértése – 2. rész


Legutóbbi „Mi a Java és a Java története” bejegyzésünkben foglalkoztunk azzal, hogy mi a Java, a Java jellemzőiről részletesen, a kiadások történetéről és elnevezéséről, valamint a Java használatának helyeiről.

Ebben a bejegyzésben a Java programozási nyelv működési és kódszerkezetén fogunk átmenni. Mielőtt továbbmennénk, hadd emlékeztessem Önöket arra, hogy a Java fejlesztése során a „Write Once Run Anywhere/Anytime (WORA)” célja annak biztosítása, hogy a kifejlesztett alkalmazás építészetileg semleges, platformfüggetlen és hordozható legyen.

A Java működése

Ezeket a célokat szem előtt tartva fejlesztették ki a Java-t az alábbi működő modellel, amely négy szakaszba sorolható.

1. szakasz

Írja meg a forrásfájlt. Ez a fájl tartalmazza az összes eljárást, metódust, osztályt és objektumot a Java programozási nyelvhez létrehozott protokollon belül. A forrásfájl nevének az osztály nevének kell lennie, vagy fordítva. A forrásfájl nevének .java kiterjesztésűnek kell lennie. A fájlnév és az osztálynév is megkülönbözteti a kis- és nagybetűket.

2. szakasz

Futtassa a Java forráskód fájlt a Java Compiler segítségével. A Java forráskód fordítója ellenőrzi, hogy vannak-e hibák és szintaxis a forrásfájlban. Nem engedi lefordítani a forráskódot anélkül, hogy a Java-fordítót kielégítené az összes hiba kijavításával és figyelmeztetéssel.

3. szakasz

A fordító létrehozza az osztályfájlt. Ezek az osztályfájlok ugyanazt a nevet öröklik, mint a forráskód fájlneve, de a kiterjesztése eltérő. A forrásfájlnév kiterjesztése 'fájlnév.java', ahol a fordító által létrehozott osztályfájl kiterjesztése 'fájlnév.osztály'. Ez az osztályfájl bájtkódba van kódolva – a bájtkódok olyanok, mint a varázslat.

4. szakasz

Ez a Java Compiler által létrehozott osztályfájl hordozható és építészetileg semleges. Ez az osztályfájl portolható bármilyen processzorarchitektúrán és platformon/eszközön való futtatáshoz. Mindössze egy Java virtuális gépre (JVM) van szüksége a kód futtatásához, bárhol is legyen.

Most egy példa segítségével értse meg a fenti négy szakaszt. Itt van egy kis Java programkód minta. Ne aggódjon, ha nem érti az alábbi kódot. Egyelőre csak értse meg, hogyan működik.

public class MyFirstProgram
{
    public static void main(String[] args)
    {
        System.out.println("Hello Tecmint, This is my first Java Program");
    }
}

1. Megírtam ezt a programot, és megadtam az osztály nevét MyFirstProgram. Fontos megjegyezni, hogy ezt a programot 'MyFirstProgram.java' néven kell elmenteni.

Ne feledje a fenti 1. szakaszt – Az osztálynévnek és a fájlnévnek meg kell egyeznie, és a fájlnévnek .java kiterjesztésűnek kell lennie. A java is megkülönbözteti a kis- és nagybetűket, ezért ha az osztálynév „MyFirstProgram”, akkor a forrásfájl nevének „MyFirstProgram.java”-nak kell lennie.

Nem nevezheti el „Myfirstprogram.java” vagy „myfirstprogram.java” vagy bármi más néven. Megállapodás szerint jó ötlet az osztály elnevezése annak alapján, hogy a program valójában mit csinál.

2. Ennek a Java-forrásfájlnak a lefordításához át kell adnia egy Java-fordítón. A Java fordító lényegében ellenőrzi a forráskódot minden hiba és figyelmeztetés szempontjából. Addig nem fordítja le a forráskódot, amíg az összes problémát meg nem oldják. Java forráskód fordításához a következőt kell futtatnia:

javac MyFirstProgram.java

Ahol MyFirstProgram.java a forrásfájl neve.

3. Sikeres fordításkor észre fogja venni, hogy a Java fordító egy új fájlt hozott létre ugyanabban a könyvtárban, amelynek neve MyFirstProgram.class.

Ez az osztályfájl bájtkódokban van kódolva, és bármilyen platformon, bármilyen processzorarchitektúrán tetszőleges ideig futtatható. Az osztályfájlt a JVM-en (Java Virtual Machine) belül futtathatja Linuxon vagy bármely más platformon, egyszerűen a következőképpen:

java MyFirstProgram

Tehát mindaz, amit fent tanult, a következőképpen foglalható össze:

Java Source Code >> Compiler >> classfile/bytecode >> Various devices running JVM 

A kódstruktúra megértése Java nyelven

1. A Java forráskódfájlnak tartalmaznia kell egy osztálydefiníciót. Egy Java forrásfájl csak egy nyilvános osztályt/legfelső szintű osztályt tartalmazhat, azonban sok privát osztályt/belső osztályt tartalmazhat.

A külső osztály/első osztály/nyilvános osztály elérheti az összes privát osztályt/belső osztályt. Az osztálynak göndör kapcsos zárójelben kell lennie. A Java-ban minden objektum, az osztály pedig az objektum tervrajza.

A nyilvános/magán osztály bemutatója Java nyelven:

public class class0
{
...
	private class1
	{
	…
	}

	private class 2
	{
	…
	}
...
}

2. Az osztály egy vagy több metódust tartalmaz. A módszernek az osztály göndör kapcsos zárójelein belül kell lennie. Egy hamis példa:

public class class0
{
	public static void main(String[] args)
	{
	…..
	…..
	}
}

3. Egy metódus egy vagy több utasítást/utasítást tartalmaz. Az utasítás(ok)nak a módszer göndör kapcsos zárójelébe kell kerülnie. Egy hamis példa:

public class class0
{
	public static void main(String[] args)
	{
	System.out.println("Hello Tecmint, This is my first Java Program");
	System.out.println("I am Loving Java");
	…
	...
	}
}

Ezen a ponton szintén fontos megemlíteni – minden állításnak pontosvesszővel kell végződnie. Egy hamis példa:

System.out.println("Hello Tecmint, This is my first Java Program");
...
...
System.out.println("I am Loving Java");

Az első Java program megírása részletes leírással. Ebben a példában a leírás megjegyzésként jelenik meg itt (a // azt jelenti, hogy kommentálva van). Megjegyzéseket kell írni egy programon belül.

Nemcsak azért, mert ez egy jó szokás, hanem azért is, mert így a kód később bármikor olvashatóvá teszi Önt vagy bárki mást.

// Declare a Public class and name it anything but remember the class name and file name must be same, say class name is MyProg and hence file name must be MyProg.java
public class MyProg

// Remember everything goes into curly braces of class?
{
 

// This is a method which is inside the curly braces of class.
   public static void main(String[] args)

    // Everything inside a method goes into curly braces	
    {
        
    // Statement or Instruction inside method. Note it ends with a semicolon
    System.out.println("I didn't knew JAVA was so much fun filled");
    
    // closing braces of method
    }

// closing braces of class
}

A fenti egyszerű Java program részletes műszaki leírása.

public class MyProg

Itt a fenti osztálynévben a MyProg, a MyProg pedig egy nyilvános osztály, ami azt jelenti, hogy mindenki hozzáférhet.

public static void main(String[] args)

Itt a metódus neve a main, ami egy nyilvános metódus, vagyis bárki számára elérhető. A visszatérési típus érvénytelen, ami azt jelenti, hogy nincs visszatérési érték. A 'Strings[] args' azt jelenti, hogy a main metódus argumentumainak tömbnek kell lenniük, amelyet args-nek kell nevezni. Jelenleg ne aggódjon a „statikus” jelentése miatt. Igény szerint részletesen leírjuk.

System.out.println("I didn't knew JAVA was so much fun filled");

A System.out.ln megkéri a JVM-et, hogy nyomtassa ki a kimenetet a szabványos kimenetre, amely esetünkben Linux parancssor. Bármi, ami a println utasítás kapcsos zárójelei között van, úgy lesz nyomtatva, ahogy van, hacsak nem változó. A változó részleteire később térünk ki. Az állítás pontosvesszővel végződik.

Még ha valami most nem is világos, nem kell aggódnia emiatt. És nem kell semmire sem emlékezni. Csak nézze át a bejegyzést, és értse meg a terminológiát és a munkát, még akkor is, ha a kép nem túl tiszta.

Ez minden most. Tartsa kapcsolatban a Tecmint szolgáltatással. Adja meg nekünk értékes visszajelzését az alábbi megjegyzésekben. Dolgozunk a következő „class and Main metódus Java-ban” részen, és hamarosan megjelenik.