A statikus és a végső különbség a Java-ban
Tartalom
A statikus és a végleges is a Java kulcsszavai. A statikus taghoz az osztályobjektum létrehozása előtt lehet hozzáférni. A véglegesnek más hatása van, ha osztályra, módszerekre és változókra alkalmazzák. A statikus és a végső kulcsszó közötti fő különbség az statikus A kulcsszó az osztálytag meghatározására szolgál, amely az osztály bármely objektumától függetlenül használható. Végső A kulcsszó deklarálja egy állandó változót, egy olyan módszert, amelyet nem lehet felülbírálni, és egy osztályt, amely nem öröklhető.
- Összehasonlító táblázat
- Meghatározás
- Főbb különbségek
- Következtetés
Összehasonlító táblázat
Az összehasonlítás alapja | Statikus | Végső |
---|---|---|
Alkalmazható | A statikus kulcsszó alkalmazható a beágyazott statikus osztályra, a változókra, a módszerekre és a blokkra. | A végső kulcsszó alkalmazható az osztályra, a módszerekre és a változókra. |
inicializálás | A statikus változó inicializálása deklarálásakor nem kötelező. | A végső változó bejelentésekor kötelező inicializálni. |
Módosítás | A statikus változó újrainicializálható. | A végső változó nem inicializálható újra. |
Mód | A statikus módszerek csak az osztály statikus tagjaihoz férhetnek hozzá, és más statikus módszerekkel is meghívhatók. | A végleges módszereket nem lehet öröklni. |
Osztály | A statikus osztályok objektumát nem lehet létrehozni, és csak statikus tagokat tartalmaz. | A végső osztályt egyetlen osztály sem örökölheti. |
Blokk | A statikus blokk a statikus változók inicializálására szolgál. | A végső kulcsszó nem támogatja az ilyen blokkokat. |
A statikus meghatározása
A statikus egy kulcsszó, amely alkalmazható az osztályokra, változókra, módszerekre és blokkokra. Az osztály tagjai, az osztály és a blokkok statikussá tehetők az „statikus” kulcsszó használatával, az osztály tagjai, az osztály, illetve a blokkok neve előtt. Amikor egy osztálytagot statikusnak nyilvánítanak, az osztály többi tagja számára globálissá válik. Az osztály statikus tagja nem foglal el memóriát példányonként, azaz az összes objektum ugyanazt a statikus tag példányt használja. A statikus elem az osztály bármelyik objektumától függetlenül használható. Az osztály statikus tagjához hozzáférhet az objektum létrehozása előtt. A statikus tag legjobb példája a main () módszer, statikusnak nyilvánul, hogy bármilyen objektum létezése előtt meghívható legyen. Általános forma az osztály statikus tagjának eléréséhez:
osztály_név.static_ tag // az osztály statikus tagjának elérése
A fenti kódban az class_name annak az osztálynak a neve, amelyben a statikus_tag meghatározva van. A statikus elem statikus változó vagy statikus módszer lehet
Statikus változók:
- A statikus változó globális változóként viselkedik az osztály összes többi tagja számára.
- Egy statikus változó elérhető, mielőtt az osztály bármely objektuma létezik.
- A statikus változóhoz hozzárendelhető az osztály neve, amelyben meghatározza, majd a pont (.) Operátor követi.
Statikus módszerek:
- A statikus módszer csak más statikus módszereket hívhat meg.
- Egy statikus módszer csak statikus adatokhoz férhet hozzá.
- A statikus módszert semmilyen körülmények között nem lehet „erre” vagy „szuper” -re hivatkozni.
- A statikus módszer elérhető a megadott osztálynévvel, amelyet a pont (.) Operátor követ.
Statikus osztály:
- A Java fogalma a beágyazott statikus osztály. A legkülső osztály nem statikus lehet, míg a legbelső osztály statikus.
- Egy statikus beágyazott osztály nem fér hozzá a külső osztály nem statikus tagjához.
- Csak a külső osztály statikus tagjaihoz fér hozzá.
Statikus blokk:
A statikus blokkot csak egyszer hajtják végre, amikor az osztály betöltődik. Az osztály statikus változóinak inicializálására szolgál.
C ++:
A C ++-ban a statikus változók, valamint a statikus függvények fogalmát értjük, míg a C ++ nem támogatja a statikus osztályt.
C #:
A C # támogatja a statikus osztályt, a statikus változókat és a statikus osztályt is.
Jáva:
A Java támogatja a statikus beágyazott osztályt, statikus változókat, statikus módszereket.
A végleges meghatározása
A végleges az osztályhoz, a változóhoz és a módszerekhez alkalmazható kulcsszó. Az osztályt, a változót és a módszert véglegesnek nyilvánítják a „végső” kulcsszó felhasználásával, amelyet a nevük előz meg. Miután egy változót véglegesnek nyilvánítottak; a programban nem módosítható tovább. A végső változót inicializálni kell az időbevallás során. A végső változók nem foglalják el a memóriát példányonként. Az osztályok minden objektuma ugyanazt a példányt tartalmazza a végső változóról.
A véglegesnek nyilvánított módszert nem szabad felülbírálni azon osztály alosztályával, amelyben a végleges módszert bejelentették. Ha az osztály végsőnek nyilvánul, akkor a másik osztály nem örökölheti azt. C ++, C # nem támogatják a fogalmat, ha a végső kulcsszó. A Java támogatja a végső kulcsszó fogalmát és a Java-ban; az osztály, a változó és a módszer véglegesnek tekinthető.
- A statikus kulcsszó alkalmazható beágyazott statikus osztályra, változókra, módszerekre és blokkokra. Másrészt a végső kulcsszó alkalmazható az osztály módszereire és változóira.
- A statikus változó bármikor inicializálható, míg a végleges változót a deklaráláskor kell inicializálni.
- A statikus változót újra lehet inicializálni, míg az inicializálás után a végleges változó soha nem lehet újból inicializálni.
- Egy statikus módszer hozzáférhet az osztály statikus tagjához, és csak egyéb statikus módszerekkel indítható. Másrészt, a végső módszert soha egyetlen ember sem örökölheti.
- A statikus blokkot a statikus változók inicializálására használják, míg a végső kulcsszó egyetlen blokkot sem támogat.
Következtetés:
Mind a statikus, mind a végső kulcsszó megkülönbözteti a célt, ha osztályra, változóra és módszerre alkalmazzák.