Arbeiten mit .NET: Grundlagen der OOP/ Ein Basiskonstruktor
Jede Klasse in C# verfügt über einen Konstruktor. Der Konstruktor ist eine Funktion, die aufgerufen wird, wenn ein Objekt einer Klasse erzeugt wird.
Wird der Konstruktor nicht vom Programmierer manuell in der Klasse implementiert, so erzeugt der Compiler automatisch einen Standardkonstruktor.
class KonstruktorBeispiel { public KonstruktorBeispiel(){ //Das ist der Standardkonstruktor } //Auch Konstruktoren können überladen werden public KonstruktorBeispiel(string Text){ Console.WriteLine(Text); } }
Beim Erstellen von Konstruktoren ist auf drei wichtige Punkte zu achten.
- Der Konstruktor heißt genau so wie die Klasse.
- Ein Konstruktor hat keinen Rückgabewert (auch nicht void).
- Wird ein Konstruktor implementiert, so wird vom Compiler kein Standardkonstruktor erstellt. Dies kann durchaus Probleme verursachen, z.B. bei der Serialisierung oder beim Vererben der Klasse. In so einem Fall empfiehlt es sich den Standardkonstruktor selbst zu implementieren ( public NameDerKlasse() ). Der Standardkonstruktor sollte im Problemfall immer per public zugreifbar sein.
Konstruktoren können gut dazu verwendet werden, um gewisse Informationen (Werte, Objekte, etc.) einer Klasse zu übergeben.
class KonstruktorAufrufBeispiel { Hier wird ein Objekt der Klasse "KonstruktorBeispiel" erzeugt und "Hallo Welt" wird als string dem 2. Konstruktor übergeben. public void KonstruktorAufruf() { KonstruktorBeispiel obj = new KonstruktorBeispiel("Hallo Welt"); } }