Statični lahko:
- Statične spremenljivke
- Statične metode
- Statični bloki kode.
Poglejmo najprej statične spremenljivke in statične metode.
Kaj je statična spremenljivka v Javi?
Statična spremenljivka v Javi je spremenljivka, ki spada v razred in se na začetku izvajanja inicializira le enkrat. To je spremenljivka, ki spada v razred in ne v objekt (primerek). Statične spremenljivke se inicializirajo samo enkrat, na začetku izvajanja. Te spremenljivke bodo najprej inicializirane, pred inicializacijo vseh spremenljivk primerka.
- Ena kopija, ki jo bodo dali v skupno rabo vsi primerki razreda
- Do statične spremenljivke lahko neposredno dostopa ime razreda in ne potrebuje nobenega predmeta
Sintaksa:
< class-name>.
Kaj je statična metoda v Javi?
Statična metoda v Javi je metoda, ki spada v razred in ne v objekt. Statična metoda lahko dostopa samo do statičnih podatkov. Gre za metodo, ki spada v razred in ne v objekt (primerek). Statična metoda lahko dostopa samo do statičnih podatkov. Ne more dostopati do nestatičnih podatkov (spremenljivke primerka).
- Statična metoda lahko prikliče samo druge statične metode in iz nje ne more priklicati nestatične metode.
- Do statične metode lahko neposredno dostopa ime razreda in ne potrebuje nobenega predmeta
- Statična metoda se tako ali tako ne more sklicevati na ključne besede "ta" ali "super"
Sintaksa:
< class-name>.
Opomba: glavna metoda je statična, saj mora biti dostopna za zagon aplikacije, preden pride do instanciranja.
Z nekaj vajami se naučimo odtenkov statičnih ključnih besed!
Primer: Kako poklicati statične spremenljivke in metode
Korak 1) Kopirajte naslednjo kodo v urejevalnik
javni razred Demo {public static void main (String args []) {Študent s1 = novi Študent ();s1.showData ();Študent s2 = nov Študent ();s2.showData ();//Student.b++;//s1.showData ();}}razred Študent {int a; // inicializirano na ničstatični int b; // inicializira se na nič samo, če je razred naložen ne za vsak ustvarjeni objekt.Študent () {// Konstruktor, ki povečuje statično spremenljivko bb ++;}public void showData () {System.out.println ("Vrednost a =" + a);System.out.println ("Vrednost b =" + b);}// javni statični prirastek praznine () {// a ++;//}}
Korak 2) Shranite in prevedite kodo. Zaženite kodo kot, java Demo .
Korak 3) Pričakovani izhod je prikazan spodaj
Naslednji diagram prikazuje, kako se ustvarjajo referenčne spremenljivke in predmeti in kako različni primerki dostopajo do statičnih spremenljivk.
Korak 4) Do statične spremenljivke je mogoče dostopati zunaj razreda s pomočjo sintakse ClassName.Variable_Name . Komentar št. 7 in 8. Shrani, sestavi in zaženi. Upoštevajte izhod.
Value of a = 0Value of b = 1Value of a = 0Value of b = 2Value of a = 0Value of b = 3Korak 5) Odprite vrstico 25,26 in 27. Shrani, sestavi in zaženi.
error: non-static variable a cannot be referenced from a static context a++;
6. korak) Napaka =? To je zato, ker ni mogoče dostopati do spremenljivke primerka " a " iz metode statičnega razreda java " inkrement ".
Kaj je statični blok v Javi?
Statična blok je blok izjave znotraj razreda Java, ki se bodo izvajale, ko je razred najprej naloži v JVM. Statična blok pomaga inicializacijo statične člane podatkov , tako kot konstruktorji pomoči za inicializacijo članov primerkov.
class Test{static {//Code goes here}}
Naslednji program je primer statičnega bloka Java.
Primer: Kako dostopati do statičnega bloka
javni razred Demo {statični int a;statični int b;statična {a = 10;b = 20;}public static void main (String args []) {System.out.println ("Vrednost a =" + a);System.out.println ("Vrednost b =" + b);}}
dobili boste naslednji izhod programa.
Value of a = 10Value of b = 20