- Autor

- Name
- Nelson Silva
- Social
Einführung
Konstruktoren spielen eine grundlegende Rolle in der objektorientierten Programmierung in C#. Sie ermöglichen es, ein Objekt zum Zeitpunkt seiner Erstellung zu initialisieren und sicherzustellen, dass das Objekt seinen Lebenszyklus in einem gültigen Zustand beginnt.
- Was sind Konstruktoren?
- Wesentliche Merkmale von Konstruktoren
- Arten von Konstruktoren in C#
- Private Konstruktoren und Konstruktorverkettung
- Codebeispiel mit verschiedenen Konstruktoren
Was sind Konstruktoren?
Konstruktoren sind spezielle Methoden, die beim Erstellen eines Objekts aufgerufen werden. Sie dienen dazu, den Zustand eines Objekts mit bestimmten Werten zu initialisieren und sicherzustellen, dass das Objekt unmittelbar nach seiner Erstellung einsatzbereit ist.
Wesentliche Merkmale von Konstruktoren
- Gleicher Name wie die Klasse: Der Name eines Konstruktors muss exakt dem Namen der Klasse entsprechen.
- Kein Rückgabetyp: Konstruktoren haben keinen deklarierten Rückgabetyp, nicht einmal
void. - Konstruktorüberladung: Eine Klasse kann mehr als einen Konstruktor haben, jeweils mit unterschiedlichen Parametern.
Arten von Konstruktoren in C#
- Standardkonstruktor: Ein Konstruktor ohne Parameter. Wird kein Konstruktor definiert, generiert C# automatisch einen Standardkonstruktor.
- Parametrisierter Konstruktor: Akzeptiert Parameter und ermöglicht so die Initialisierung eines Objekts mit spezifischen Werten.
- Statischer Konstruktor: Wird einmalig ausgeführt, um statische Klassenmember zu initialisieren.
Private Konstruktoren und Konstruktorverkettung
- Private Konstruktoren: Werden in Entwurfsmustern wie dem Singleton verwendet. Sie verhindern die Erstellung von Instanzen der Klasse von außerhalb der Klasse selbst.
- Konstruktorverkettung: Ermöglicht es einem Konstruktor, einen anderen in derselben Klasse mithilfe von
: this()aufzurufen. Dies hilft, Code-Duplikation zu vermeiden.
Codebeispiel mit verschiedenen Konstruktoren
Sehen wir uns ein Beispiel an, das die verschiedenen Arten von Konstruktoren veranschaulicht:
namespace Base {
class Person {
public string Name { get; set; }
public int Alter { get; set; }
// Standardkonstruktor
public Person() {
Name = "Unbekannt";
}
// Parametrisierter Konstruktor
public Person(string name) {
Name = name;
}
// Konstruktorverkettung
public Person(string name, int alter) : this(name) {
Alter = alter;
}
}
}
Fazit
Konstruktoren sind in der objektorientierten Programmierung unverzichtbar. Sie bereiten ein Objekt nicht nur für den sofortigen Einsatz vor, sondern tragen auch zur Wahrung der Datenintegrität und zur Förderung sicherer Programmierpraktiken bei.