BESTE WEBSITE FÜR WEBENTWICKLER
C# Sprache. W3Schools auf Deutsch. Unterricht für Anfänger

Ua En Es

C# Konstrukteure


Konstrukteure

Ein Konstruktor ist eine spezielle Methode, die zum Initialisieren von Objekten verwendet wird. Der Vorteil eines Konstruktors besteht darin, dass er aufgerufen wird, wenn ein Objekt einer Klasse erstellt wird. Es kann verwendet werden, um Anfangswerte für Felder festzulegen:

Beispiel

Erstellen Sie einen Konstruktor:

// Erstellen Sie eine Car-Klasse
class Car
{
  public string model;  // Erstellen Sie ein Feld

  // Erstellen Sie einen Klassenkonstruktor für die Car-Klasse
  public Car()
  {
    model = "Mustang"; // Legen Sie den Anfangswert für das Modell fest
  }

  static void Main(string[] args)
  {
    Car Ford = new Car();  // Erstellen Sie ein Objekt der Car-Klasse (dadurch wird der Konstruktor aufgerufen)
    Console.WriteLine(Ford.model);  // Geben Sie den Wert des Modells aus
  }
}
// Ausgänge "Mustang"

Try it Yourself »

Beachten Sie, dass der Konstruktorname mit dem Klassennamen übereinstimmen sein muss und keinen Rückgabetyp haben darf (wie void oder int).

Beachten Sie außerdem, dass der Konstruktor aufgerufen wird, wenn das Objekt erstellt wird.

Alle Klassen verfügen standardmäßig über Konstruktoren: Wenn Sie selbst keinen Klassenkonstruktor erstellen, erstellt C# einen für Sie. Allerdings können Sie dann keine Anfangswerte für Felder festlegen.

Konstrukteure sparen Zeit! Schauen Sie sich das letzte Beispiel auf dieser Seite an, um wirklich zu verstehen, warum.


Konstruktorparameter

Konstruktoren können auch Parameter annehmen, die zum Initialisieren von Feldern verwendet werden.

Im folgenden Beispiel wird dem Konstruktor ein Parameter string modelName hinzugefügt. Im Konstruktor setzen wir model auf modelName (model=modelName). Wenn wir den Konstruktor aufrufen, übergeben wir einen Parameter an den Konstruktor ("Mustang"), dadurch wird der Wert von model auf gesetzt "Mustang":

Beispiel

class Car
{
  public string model;

  // Erstellen Sie einen Klassenkonstruktor mit einem Parameter
  public Car(string modelName)
  {
    model = modelName;
  }

  static void Main(string[] args)
  {
    Car Ford = new Car("Mustang");
    Console.WriteLine(Ford.model);
  }
}
// Ausgänge "Mustang"

Try it Yourself »

Sie können so viele Parameter haben, wie Sie möchten:

Beispiel

class Car
{
  public string model;
  public string color;
  public int year;

  // Erstellen Sie einen Klassenkonstruktor mit mehreren Parametern
  public Car(string modelName, string modelColor, int modelYear)
  {
    model = modelName;
    color = modelColor;
    year = modelYear;
  }

  static void Main(string[] args)
  {
    Car Ford = new Car("Mustang", "Red", 1969);
    Console.WriteLine(Ford.color + " " + Ford.year + " " + Ford.model);
  }
}
// Ausgänge Red 1969 Mustang

Try it Yourself »

Tipp: Genau wie andere Methoden können Konstruktoren durch die Verwendung einer unterschiedlichen Anzahl von Parametern überladen werden.


Konstrukteure sparen Zeit

Wenn Sie sich das Beispiel aus dem vorherigen Kapitel ansehen, werden Sie feststellen, dass Konstruktoren sehr nützlich sind, da sie dabei helfen, die Codemenge zu reduzieren:

Ohne Konstruktor:

prog.cs

class Program
{
  static void Main(string[] args)
  {
    Car Ford = new Car();
    Ford.model = "Mustang";
    Ford.color = "red";
    Ford.year = 1969;

    Car Opel = new Car();
    Opel.model = "Astra";
    Opel.color = "white";
    Opel.year = 2005;

    Console.WriteLine(Ford.model);
    Console.WriteLine(Opel.model);
  }
}

Try it Yourself »

Mit Konstruktor:

prog.cs

class Program
{
  static void Main(string[] args)
  {
    Car Ford = new Car("Mustang", "Red", 1969);
    Car Opel = new Car("Astra", "White", 2005);

    Console.WriteLine(Ford.model);
    Console.WriteLine(Opel.model);
  }
}

Try it Yourself »