Java statikus módszer, változó és blokkolás példával

Tartalomjegyzék:

Anonim

A statikus lehet:

  1. Statikus változók
  2. Statikus módszerek
  3. Statikus Blokkok Kód.

Először nézzük meg a statikus változókat és a statikus módszereket.

Mi a statikus változó a Java-ban?

A Java statikus változója az osztályhoz tartozó változó, amelyet a végrehajtás kezdetekor csak egyszer inicializálnak. Ez egy olyan változó, amely az osztályhoz tartozik, és nem objektumhoz (példányhoz) tartozik. A statikus változókat csak egyszer inicializálják, a végrehajtás kezdetekor. Ezeket a változókat először inicializáljuk, mielőtt bármely példányváltozót inicializálnánk.

  • Egyetlen példány, amelyet az osztály összes példánya megoszthat
  • A statikus változó közvetlenül elérhető az osztály nevével, és nincs szüksége objektumra

Szintaxis:

< class-name>. 

Mi a statikus módszer a Java-ban?

A statikus módszer a Java-ban olyan osztály, amely az osztályhoz tartozik, és nem az objektumhoz. A statikus módszer csak statikus adatokhoz férhet hozzá. Ez egy olyan módszer, amely az osztályhoz tartozik, és nem az objektumhoz (példányhoz). A statikus módszer csak statikus adatokhoz férhet hozzá. Nem fér hozzá nem statikus adatokhoz (példányváltozókhoz).

  • A statikus módszer csak más statikus módszereket hívhat meg, és nem hívhat meg nem statikus módszereket belőle.
  • A statikus metódus közvetlenül elérhető az osztálynévvel, és nincs szüksége objektumra
  • A statikus módszer egyébként nem hivatkozhat "erre" vagy "szuper" kulcsszavakra

Szintaxis:

< class-name>. 

Megjegyzés: a fő módszer statikus, mivel hozzáférhetőnek kell lennie egy alkalmazás futtatásához, mielőtt bármilyen példányosítás megtörténne.

Tanulja meg a statikus kulcsszavak árnyalatait néhány gyakorlattal!

Példa: Statikus változók és módszerek hívása

1. lépés: Másolja a következő kódot egy szerkesztőbe

nyilvános osztály Demo {public static void main (String args []) {Diák s1 = új hallgató ();s1.showData ();Student s2 = new Student ();s2.showData ();//Student.b++;//s1.showData ();}}osztályos diákint a; // nullára inicializálvastatikus int b; // csak akkor nullázódik, ha az osztály betöltődik, nem minden létrehozott objektumhoz.Diák(){// Konstruktor inkrementáló statikus változó bb ++;}public void showData () {System.out.println ("a =" + a értéke);System.out.println ("b értéke =" + b);}// public static void increment () {// a ++;//}}

2. lépés: Mentse és fordítsa le a kódot. Futtassa a kódot, java Demo .
3. lépés: A várható kimenet az alábbiakban látható


A következő ábra bemutatja, hogy a különböző példányok hogyan hozzák létre a referenciaváltozókat és az objektumokat, és hogyan érik el a statikus változókat.


4. lépés) A statikus változó az osztályon kívülről is elérhető a ClassName.Variable_Name szintaxissal . A 7. és 8. sor megjegyzés nélküli kommentje. Mentés, fordítás és futtatás. Figyelje a kimenetet.

Value of a = 0Value of b = 1Value of a = 0Value of b = 2Value of a = 0Value of b = 3
5. lépés: Kommentelje a 25,26 és 27 sort. Mentés, fordítás és futtatás.
error: non-static variable a cannot be referenced from a static context a++;

6. lépés) Hiba =? Ez azért van, mert nem lehet hozzáférni az " a " példányváltozóhoz a java static class metódus " increment " -jéből .

Mi a statikus blokk a Java-ban?

A statikus blokk egy mondatblokk egy Java osztályon belül, amelyet akkor hajtanak végre, amikor egy osztályt először betöltenek a JVM-be. A statikus blokk segít inicializálni a statikus adattagokat , mint a konstruktorok a példánytagok inicializálásában.

class Test{static {//Code goes here}}

A következő program a java statikus blokk példája.

Példa: A statikus blokk elérése

nyilvános osztály Demo {statikus int a;statikus int b;statikus {a = 10;b = 20;}public static void main (String args []) {System.out.println ("a =" + a értéke);System.out.println ("b értéke =" + b);}}

megkapja a program következő kimenetét.

Value of a = 10Value of b = 20