Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Abgeleitete Klassen | OOP Essentials
C# Über die Grundlagen Hinaus
course content

Kursinhalt

C# Über die Grundlagen Hinaus

C# Über die Grundlagen Hinaus

1. Zusätzliche Strukturen & Dateiverarbeitung
2. Strukturen & Enumeratoren
3. Einführung in die Objektorientierte Programmierung (OOP)
4. OOP Essentials
5. OOP-Prinzipien

book
Abgeleitete Klassen

Wenn wir sagen, dass eine Klasse von einer anderen Klasse abgeleitet ist, bedeutet das, dass sie alle Felder und Methoden der Elternklasse hat und zusätzlich kann die abgeleitete Klasse auch zusätzliche Felder und Methoden enthalten.

Die Syntax zum Erstellen einer abgeleiteten Klasse ist wie folgt:

cs

index

copy
1234567891011
// Base class (parent class) public class BaseClass { // Fields and methods of the base class } // Derived class (child class) public class DerivedClass : BaseClass { // Additional fields and methods specific to the derived class }

Hier ist ein Beispiel mit etwas konkretem Code:

cs

index

copy
12345678910111213141516171819202122232425262728293031323334353637
using System; // Base class (parent class) public class Animal { public string Name; public void Eat() { Console.WriteLine($"{Name} is eating."); } } // Derived class (child class) public class Dog : Animal { public void Bark() { Console.WriteLine($"{Name} is barking."); } } class ConsoleApp { static void Main() { // Creating an instance of the derived class Dog myDog = new Dog(); myDog.Name = "Buddy"; // Using inherited method from the base class myDog.Eat(); // Using method specific to the derived class myDog.Bark(); } }

In diesem Beispiel ist Dog die abgeleitete Klasse, die von der Basisklasse Animal erbt. Die Dog-Klasse hat Zugriff auf die Name-Eigenschaft und die Eat-Methode der Animal-Klasse. Zusätzlich führt sie eine neue Methode Bark ein, die spezifisch für die Dog-Klasse ist.

Wie im Diagramm dargestellt, kann es Fälle geben, in denen eine Klasse von einer Klasse erbt, die bereits eine Klasse von einer anderen ist:

cs

index

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445
using System; // Base class public class Animal { public void Eat() { Console.WriteLine("Animal is eating."); } } // Intermediate class inheriting from Animal public class Mammal : Animal { public void GiveBirth() { Console.WriteLine("Mammal is giving birth."); } } // Derived class inheriting from Mammal public class Dog : Mammal { public void Bark() { Console.WriteLine("Dog is barking."); } } class Program { static void Main() { Dog myDog = new Dog(); // Methods from the base class myDog.Eat(); // Methods from the intermediate class myDog.GiveBirth(); // Methods from the derived class myDog.Bark(); } }

In einem solchen Fall wird die Klasse auf der obersten Ebene als Superklasse bezeichnet. In diesem Fall ist Animal die Superklasse. Ein solcher Fall, bei dem es mehrere Ebenen der Vererbung gibt, wird als Mehrstufige Vererbung bezeichnet.

1. In C#, welches Schlüsselwort oder Symbol wird verwendet, um eine abgeleitete Klasse zu deklarieren?

2. Wie wird die Klasse an der Spitze bei Mehrfachvererbung genannt?

3. Ist Mehrfachvererbung in C# möglich?

In C#, welches Schlüsselwort oder Symbol wird verwendet, um eine abgeleitete Klasse zu deklarieren?

In C#, welches Schlüsselwort oder Symbol wird verwendet, um eine abgeleitete Klasse zu deklarieren?

Wählen Sie die richtige Antwort aus

Wie wird die Klasse an der Spitze bei Mehrfachvererbung genannt?

Wie wird die Klasse an der Spitze bei Mehrfachvererbung genannt?

Wählen Sie die richtige Antwort aus

Ist Mehrfachvererbung in C# möglich?

Ist Mehrfachvererbung in C# möglich?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 1
We're sorry to hear that something went wrong. What happened?
some-alt