Java main () Módszer magyarázata
1. Áttekintés
Minden programnak szüksége van egy helyre a végrehajtás megkezdéséhez; Java programokról beszélve, ez az fő- módszer. Annyira megszoktuk írni fő- módszerrel, hogy a részleteire sem figyelünk. Ebben a rövid cikkben elemezzük ezt a módszert, és bemutatunk néhány más módszert a megírásához.2. Közös aláírás
A leggyakoribb fő módszer sablon:public static void main (String [] args) {}
Így tanultuk meg, így az IDE automatikusan kitölti számunkra a kódot. De ez az egyetlen forma, amelyet ez a módszer feltételezhet, van néhány érvényes változat, amelyet felhasználhatunk és nem minden fejlesztő figyel erre a tényre.
Mielőtt belemerülnénk e módszer aláírásokba, nézzük át a közös aláírás egyes kulcsszavainak jelentését:
- nyilvános - hozzáférés-módosító, globális láthatóságot jelent
- statikus - a módszer egyenesen az osztályból érhető el, nem kell példányt adnunk egy objektumnak, hogy referenciánk legyen és használhassuk
- üres - azt jelenti, hogy ez a módszer nem ad vissza értéket
- fő- - a módszer neve, ez az az azonosító, amelyet a JVM keres egy Java program futtatásakor
Ami a érvel paraméter, a módszer által kapott értékeket képviseli. Így adunk át argumentumokat a programnak, amikor először elindítjuk.
A paraméter érvel tömbje Húrs. A következő példában:
java CommonMainMethodSignature foo bar
nevű Java programot hajtunk végre CommonMainMethodSignature és 2 érvet ad át: foo és rúd. Ezek az értékek a fő- módszer as args [0] (miután foo mint érték) és args [1] (miután rúd mint érték).
A következő példában az argumentumokat ellenőrizzük, hogy eldöntsük, teszt- vagy gyártási paramétereket töltünk-e be:
public static void main (Karakterlánc [] args) {if (args.hossz> 0) {if (args [0] .egyenlő ("teszt")) {// tesztparaméterek betöltése} else if (args [0] .egyenlő ("termelés")) {// termelési paraméterek betöltése}}}
Mindig jó megjegyezni, hogy az IDE-k argumentumokat is átadhatnak a programnak.
3. Különböző írásmódok a fő() Módszer
Nézzünk meg néhány különböző módszert a fő- módszer. Bár nem túl gyakoriak, de érvényes aláírások.
Ne feledje, hogy ezek egyike sem jellemző a fő- metódus, bármely Java módszerrel használhatók, de a fő- módszer.
A szögletes zárójel a közelben helyezhető el Húr, mint a közös sablonban, vagy annak közelében érvel barmelyik oldalon:
public static void main (String [] args) {}
public static void main (String args []) {}
Az érvek varargként ábrázolhatók:
public static void main (String ... args) {}
Még hozzá is tehetjük szigorúfp a fő() módszer, amelyet a processzorok közötti kompatibilitáshoz használnak, ha lebegőpontos értékekkel dolgoznak:
public strictfp static void main (String [] érvel) {}
szinkronizált és végső érvényes kulcsszavak a fő- módszer, de itt nem lesznek hatásuk.
Másrészről, végső lehet alkalmazni érvel megakadályozza a tömb módosítását:
public static void main (végső karakterlánc [] érvel) {}
Ezeknek a példáknak a végére írhatjuk a fő- módszer a fenti kulcsszavak mindegyikével (amelyet természetesen valószínűleg soha nem fog használni gyakorlati alkalmazásban):
végleges statikus szinkronizált strictfp void main (végső karakterlánc [] args) {}
4. Több mint egy van fő() Mód
Meghatározhatjuk azt is több mint egy fő- módszer az alkalmazásunkon belül.
Valójában egyesek primitív teszt technikaként használják az egyes osztályok validálásához (bár a teszt keretrendszerei hasonlóak ehhez JUnit sokkal inkább jelzik ezt a tevékenységet).
Hogy melyiket fő- A JVM-nek az alkalmazásunk belépési pontjaként végrehajtandó módszerét a MANIFEST.MF fájl. A jegyzékben megadhatjuk a fő osztályt:
Főosztály: mypackage.ClassWithMainMethod
Ezt leginkább futtatható fájl létrehozásakor használják .befőttes üveg fájl. Jelöljük, hogy melyik osztály rendelkezik fő- módszer a végrehajtás megkezdéséhez a META-INF / MANIFEST.MF (kódolt UTF-8).
5. Következtetés
Ez az oktatóanyag a fő- metódust és néhány más formát feltételezhet, még azokat is, amelyek a fejlesztők többségénél nem túl gyakoriak.
Tartsd észben, hogy, bár az általunk bemutatott összes példa szintaxis szempontjából érvényes, csak az oktatási célt szolgálja és legtöbbször ragaszkodunk a közös aláíráshoz a munkánk elvégzéséhez.