Kiedy używać static?

  • Rejestracja: dni
  • Ostatnio: dni
0

Czym się kierować przy uzywaniu static? Skąd mam wiedziec ze pole czy metoda w klasie powinna być statyczna?

JA
  • Rejestracja: dni
  • Ostatnio: dni
0

Jeśli nie korzystasz z thisa, to może być jako statyczna. :)

WeiXiao
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5227
0

Jeżeli to coś może działać niezależnie od tego co się dzieje w danej klasie np. metody z libek matematycznych Math.Power(a,b) - wkładasz input i dostajesz output. Przy statycznych metodach nie musisz tworzyć instancji klasy.

Albo jeżeli chcesz coś współdzielić pomiędzy wszystkie instancje tej klasy.

Inquis1t0r
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 300
0
Zakręcony Terrorysta napisał(a):

Skąd mam wiedziec ze pole czy metoda w klasie powinna być statyczna?

W największym skrócie: pola i metody statyczne to takie, które są wspólne dla wszystkich obiektów (wspólne w sensie, że posiadają identyczne wartości i zachowanie) danej klasy (w przypadku metod nie musisz nawet tworzyć jakiegokolwiek obiektu aby skorzystać z metody tej klasy). Generalnie rozchodzi się o oszczędzenie pamięci jaka jest alokowana dla każdego obiektu, ponieważ składowe statyczne są alokowane tylko raz.

W wolnej chwili poczytaj sobie o tym jak JVM organizuje dostępną sobie pamięć.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.