Ako je potrebno definisati član klase koji se koristi nezavisno od objekta treba ga označiti kao static.

Primer statične metode je metoda main() - koristimo je bez formiranih objekata !

Metoda main() se poziva pre pravljenja bilo kakvog objekta !

Sve instance neke klase dele ISTU statičku promenljivu.

U nekim knjigama o C#-u naići ćete na ograničenja kao što su:

  • Statične metode mogu pozivati SAMO statične metode direktno ( Ipak, možete pozvati i nestatičnu metodu, ali ako je ona u nekom konkretnom objektu ! )
  • Statične metode moraju  pristupati SAMO statičnim podacima ( ovde možete da koristite podatke koje ste uneli kao konstante)
  • NE MOGU  se koristiti rezervisane reči this  i super (o ovome će biti reči u narednom gradivu)

Možete da to shvatite i ovako:

U C# (i u Javi) ne postoje globalne promjenljive ni funkcije koje nisu metodi neke klase, nego se umesto njih koriste static atributi i metodi. Dakle, static atribut možete posmatrati kao globalnu promenljivu, s tim da joj pristupte sa Klasa.Atribut. Slično važi i za static metod. Static konstruktor služi za inicijalizaciju static atributa neke klase, dok obični konstruktor inicijalizuje non-static, tako da nema preklapanja.

Last modified: Friday, 17 October 2025, 10:04 AM