Statinis gali būti:
- Statiniai kintamieji
- Statiniai metodai
- Statiniai kodų blokai.
Pirmiausia pažvelkime į statinius kintamuosius ir statinius metodus.
Kas yra „Java“ statinis kintamasis?
Statinis kintamasis „Java“ yra kintamasis, priklausantis klasei ir inicijuojamas tik vieną kartą vykdymo pradžioje. Tai kintamasis, kuris priklauso klasei, o ne prieštaravimui (egzemplioriui). Statiniai kintamieji inicijuojami tik vieną kartą, vykdymo pradžioje. Šie kintamieji bus inicializuoti pirmiausia, prieš inicializuojant bet kokius kintamuosius.
- Viena kopija, kurią gali bendrinti visi klasės egzemplioriai
- Prie statinio kintamojo galima tiesiogiai pasiekti klasės pavadinimą ir jam nereikia jokio objekto
Sintaksė:
< class-name>.
Kas yra „Java“ statinis metodas?
Statinis „Java “ metodas yra metodas, priklausantis klasei, o ne objektui. Statinis metodas gali pasiekti tik statinius duomenis. Tai metodas, priklausantis klasei, o ne objektui (egzemplioriui). Statinis metodas gali pasiekti tik statinius duomenis. Jis negali pasiekti nestatinių duomenų (egzempliorių kintamųjų).
- Statinis metodas gali iškviesti tik kitus statinius metodus ir negali iš jo iškviesti ne statinį metodą.
- Prie statinio metodo galima tiesiogiai prisijungti naudojant klasės pavadinimą ir jam nereikia jokio objekto
- Statinis metodas vis tiek negali nurodyti „šio“ ar „super“ raktinio žodžio
Sintaksė:
< class-name>.
Pastaba: pagrindinis metodas yra statinis, nes jis turi būti prieinamas programai paleisti, prieš atliekant bet kokius pavyzdinius veiksmus.
Leiskite išmokti statinių raktinių žodžių niuansų atlikdami keletą pratimų!
Pavyzdys: kaip iškviesti statinius kintamuosius ir metodus
1 žingsnis. Nukopijuokite šį kodą į redaktorių
viešosios klasės demonstracija {public static void main (String args []) {Studentas s1 = naujas studentas ();s1.showData ();Studentas s2 = naujas studentas ();s2.showData ();//Student.b++;//s1.showData ();}}klasės mokinys {int a; // inicializuota iki nuliostatinis int b; // inicializuojama iki nulio tik tada, kai klasė įkeliama ne kiekvienam sukurtam objektui.Studentas(){// Konstruktorius, didinantis statinį kintamąjį bb ++;}public void showData () {System.out.println ("a =" + a reikšmė);System.out.println ("b reikšmė =" + b);}// viešas statinis tuštumos prieaugis () {// a ++;//}}
2 žingsnis) Išsaugokite ir sudarykite kodą. Paleiskite kodą kaip, java Demo .
3 žingsnis) Laukiama išvestis rodoma žemiau
Šioje diagramoje parodyta, kaip skirtingi egzemplioriai kuria referencinius kintamuosius ir objektus ir kaip prieiti prie statinių kintamųjų.
4 žingsnis) Naudojant sintaksę „ ClassName.Variable_Name“ galima pasiekti statinį kintamąjį iš klasės ribų . Komentarų eilutė Nr. 7 ir 8. Išsaugoti, sudaryti ir paleisti. Stebėkite išvestį.
Value of a = 0Value of b = 1Value of a = 0Value of b = 2Value of a = 0Value of b = 35 žingsnis) Nekomentuokite 25, 26 ir 27 eilutės. Išsaugoti, sudaryti ir paleisti.
error: non-static variable a cannot be referenced from a static context a++;
6 žingsnis) Klaida =? Taip yra todėl, kad neįmanoma pasiekti egzemplioriaus kintamojo „ a “ iš „Java“ statinės klasės metodo „ prieaugis “.
Kas yra „Static Block“ sistemoje „Java“?
Statinio blokas yra pareiškime blokas viduje Java klasės, kad bus vykdomas, kai klasė yra pirmasis įkeltas į JVM. Statinio blokas padeda inicijuoti statinių duomenų prisijungę , kaip konstruktoriai pagalba inicijuoti instancijos narius.
class Test{static {//Code goes here}}
Sekanti programa yra „Java“ statinio bloko pavyzdys.
Pavyzdys: Kaip pasiekti statinį bloką
viešosios klasės demonstracija {statinis int a;statinis int b;statinis {a = 10;b = 20;}public static void main (String args []) {System.out.println ("a =" + a reikšmė);System.out.println ("b reikšmė =" + b);}}
gausite tokią programos išvestį.
Value of a = 10Value of b = 20