Entwickler-Ecke

Basistechnologien - Statische Klassen mit gleichen Methoden


andyp17 - Mo 14.02.11 17:46
Titel: Statische Klassen mit gleichen Methoden
Hallo,
Ich habe in meinem Programm mehrere unterschiedliche statische Klassen. Jetzt gibt es aber eine Methode, die in all diesen statischen Klassen gleich ist. Wie kann ich das nun am elegantesten lösen? Irgendwie gefällt mir das nicht, dass ich überall den gleichen Code drinnen habe. Wie macht man sowas am Besten?

Vielen Dank für eure Hilfe!

mfg
Andy


huuuuuh - Mo 14.02.11 17:51

Das Schlüsselwort hier ist Vererbung: http://msdn.microsoft.com/de-de/library/ms173149(v=VS.90).aspx


andyp17 - Mo 14.02.11 18:00

Hab ich mir auch gedacht, aber es sollen statische Klassen bleiben und da funktioniert die Vererbung nicht, oder??


huuuuuh - Mo 14.02.11 18:30

es funktioniert schon. du darfst die Klassen halt nicht als static deklarieren... die static-methoden werden übernommen. wenn du verhindern willst, dass man Objekte der Klassen erzeugen kann, deklariere die Klassen als "abstract"


Christian S. - Mo 14.02.11 19:23

user profile iconhuuuuuh hat folgendes geschrieben Zum zitierten Posting springen:
es funktioniert schon. du darfst die Klassen halt nicht als static deklarieren... die static-methoden werden übernommen. wenn du verhindern willst, dass man Objekte der Klassen erzeugen kann, deklariere die Klassen als "abstract"
Dann doch bitte lieber einen leeren, privaten Konstruktor anlegen, dann kann man die Klasse auch nicht mehr instanzieren aber eine nicht-abstrakte Klasse wird nicht als abstrakt ausgegeben ;-)

Insgesamt denke ich aber, dass man mehr über die Beziehung der Klassen untereinander wissen muss, bevor man hier Vererbung empfiehlt. Denn Vererbung ist kein Mittel, um Schreibarbeit zu sparen, sondern um Beziehungen abzubilden. Und wenn die Klassen zwar alle eine Methode gemeinsam haben, sonst aber nichts miteinander zu tun haben (also auch keine Mutter-Kind-Beziehung haben), dann ist Vererbung der falsche Weg.