Wann statische Methoden/Attribute?

Maxii

Mitglied
Hallo,

beim Programmieren erstelle ich in vielen Fällen von jeder Klasse immer nur eine eine Instanz (z.B. bei einer View). So könnte ich hier doch eigentlich wunderbar mit statischen Attributen und Methoden arbeiten. So würde ich mir einigen Aufwand ersparen, Objekte zu erzeugen und diese über mehrere Klassen weiterzuleiten. Dennoch sieht man in Lehrbüchern diese Konzepte eher selten. Wieso ist das so? Eine Erklärung könnte ja z.B. sein, dass der Code dann nicht mehr wirklich objektorientiert ist. Aber wann sollten man dann diese Konzepte benutzen?

Danke
Maxii
 
Es gibt verschiedene Antworten... mit einem "static" hast du schnell etwas geschreiben, so weit so gut. Aber du kannst statischen Teile schlecht austauschen (das wäre aber wichtig für Tests), und sie tauchen planlos an verschiedensten Stellen auf (Probleme für die Wartbarkeit, und fürs Verständnis vom Code).

Ich mach es mir mit "static" einfach und stelle mir eine Frage: "Ist das Teilchen das ich static machen will, wirklich einzigartig?". In 99% aller Fälle resultiert ein "nein" (wieso sollte es z.B. nicht mehr als eine View geben? Viele Programme können mehr als ein Fenster öffnen...).
 
Statische Methoden werden oft für "Helfer Methoden" verwendet, also welche die man in jeder Klasse verwenden könnte. Bspw wenn du ne Methode für das Berechnen von irgendetwas hast, du die Methode aber praktisch in jeder Klasse brauchen könntest.
 

Neue Themen


Zurück
Oben