Sobes.tech
Junior

Kādiem pielietojumiem ir piemērots static modifikators?

sobes.tech AI

Atbilde no AI

  1. Klases mainīgie (statiskie lauki): Datu glabāšanai, kas ir kopīgi visiem klases eksemplāriem. Piemēram, izveidoto objektu skaitītājs vai konstantes.
  2. Klases metodes (statiskās metodes): Darbībām, kas nav atkarīgas no konkrēta objekta. Piemēram, palīgfunkcijas vai metodes darbam ar statiskajiem laukiem.
  3. Statiskās inicializācijas bloki: Sarežģītas statisko lauku inicializācijas veikšanai, ielādējot klasi.
  4. Iekļautas statiskas klases: Loģiska grupēšana saistītajām klasēm vai izmantošana kā palīgklases bez ārēja objekta atsauces.

Piemēri:

public class MyClass {
    // Statiskais lauks (konstante)
    public static final int MAX_COUNT = 100;

    // Statiskais lauks (eksemplāru skaitītājs)
    private static int instanceCount = 0;

    // Statiskās inicializācijas bloks
    static {
        System.out.println("MyClass ielādēta.");
    }

    public MyClass() {
        instanceCount++;
    }

    // Statiskā metode
    public static int getInstanceCount() {
        return instanceCount;
    }

    // Iekļauta statiska klase
    public static class StaticInnerClass {
        public void doSomething() {
            System.out.println("Statiskās iekšējās klases iekšpusē.");
        }
    }
}

Statisko un nestatisko locekļu salīdzinājuma tabula:

Raksturlielums Statiskā loceklis Nestatiskā loceklis
Ar objektu Pieder klasei Pieder eksemplāram
Pieeja Caure klases nosaukuma vai objekta Caure objekta
Inicializācija Ielādējot klasi Veidojot objektu
Atmiņa Piešķirta vienu reizi Piešķirta katram objektam