Junior — Middle
Kāda ir atšķirība starp statisko mainīgo programmēšanā un kādas ir tās īpašības?
sobes.tech AI
Atbilde no AI
Statiska mainīgā ir mainīgā, kas pieder klasei, nevis konkrētam objekta piemēram. Tā pastāv vienā eksemplārā visai klasei un saglabā savu vērtību starp metožu izsaukumiem.
Statisko mainīgo īpašības:
- Kopīga visiem klases eksemplāriem: visi klases objekti dalās ar to pašu statisko mainīgo.
- Tiek inicializēta vienu reizi klases ielādes laikā.
- Pieejama bez klases eksemplāra izveides (izmantojot klases nosaukumu).
- Tiek izmantota stāvokļa vai kopīgu datu glabāšanai, kas ir kopīgi visiem objektiem.
Piemērs Java:
public class Counter {
public static int count = 0;
public Counter() {
count++;
}
}
// Lietošana:
Counter c1 = new Counter();
Counter c2 = new Counter();
System.out.println(Counter.count); // Izvadīs 2
Testos statiskās mainīgās var radīt grūtības, jo to stāvoklis tiek saglabāts starp testiem, kas var novest pie nevēlamām blakusparādībām. Tādēļ ir svarīgi tīrīt vai izolēt statiskos datus testos.