Objektorientiertes C#

Vererbung in C#

In dieser Lektion erstellst du eine Unterklasse, die von einer Oberklasse erbt, um Code wiederzuverwenden und das Verhalten anzupassen.

Einführung

Vererbung (inheritance) erlaubt einer neuen Klasse (Unterklasse), alle Daten und Methoden einer vorhandenen Klasse (Oberklasse) zu übernehmen und dann Verhalten hinzuzufügen oder zu ändern. Vererbung drückt eine "ist ein"-Beziehung aus, zum Beispiel ist ein Entwickler ein Mitarbeiter, und sollte nur verwendet werden, wenn diese Beziehung wirklich stimmt.

Die Klasse Employee speichert den Namen des Mitarbeiters und hat die Methode Describe(), die als virtual markiert ist, die Unterklasse darf sie also überschreiben. Die Klasse Developer erbt von Employee, gibt den Namen mit Employee(name) an die Oberklasse weiter und beschreibt mit override zusätzlich die Programmiersprache. Das Ergebnis ist Ada writes C#.

Ausführbares C#-Beispiel

C#
Code ausführen →
Program.cs
using System;

class Employee(string name)
{
    public string Name { get; } = name;
    public virtual string Describe() => Name;
}

class Developer(string name, string language) : Employee(name)
{
    public override string Describe() => $"{Name} writes {language}";
}

class Program
{
    static void Main() => Console.WriteLine(new Developer("Ada", "C#").Describe());
}
Ergebnis der Ausführung
Ada writes C#

Mit dem Debugger üben

Setze einen Haltepunkt auf eine wichtige Zuweisung oder Bedingung, klicke auf Debug und sieh dir die lokalen Werte an, bevor du zur nächsten Zeile gehst.

Mit einer Challenge üben

Nutze den Inhalt dieser Lektion, um ein echtes Problem zu lösen. Jede Challenge läuft im Browser, mit sofortigen Tests und einem KI-Review.

Alle Challenges