Witam.
Możecie mi wytłumaczyć do czego służą klasy statyczne ?
Czym np różni się coś takiego:
public static class StaticFoo
{
public static int x = 0;
}
od
public class Foo
{
public static int x = 0;
}
Z tego co zrozumiałem to
- Metoda statyczna może zawierać wyłącznie pola/metody statyczne.
- Do statycznych metod/pól obydwóch klas mam dostęp bez tworzenia obiektu klasy (co za tym idzie w klasie statycznej mam dostęp do "wszystkiego" - nawiązując do pkt 1).
- Mogę utworzyć obiekt klasy "niestatycznej" (mimo że zawiera pola/metody statyczne), natomiast obiektu klasy statycznej nie utworzę.
Jakie jeszcze są główne i kluczowe różnice i zastosowania klasy statycznej ?