Junior
Kādiem pielietojumiem ir piemērots static modifikators?
sobes.tech AI
Atbilde no AI
- 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.
- 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.
- Statiskās inicializācijas bloki: Sarežģītas statisko lauku inicializācijas veikšanai, ielādējot klasi.
- 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 |