Sobes.tech
Intern

Was ist Vererbung in der Programmierung und wofür wird sie verwendet?

sobes.tech KI

Antwort von AI

Vererbung ist ein Mechanismus der objektorientierten Programmierung (OOP), der es einer Klasse (Unterklasse, abgeleitet) ermöglicht, Eigenschaften (Attribute) und Verhalten (Methoden) einer anderen Klasse (Elternklasse, Basisklasse) zu erben.

Wird verwendet für:

  • Code-Wiederverwendung: Methoden und Attribute der Basisklasse sind in der abgeleiteten Klasse zugänglich, was Duplizierung von Code vermeidet.
  • Erstellung von Klassenhierarchien: Ermöglicht die Modellierung von "ist ein"-Beziehungen (is-a) zwischen Objekten. Zum Beispiel ist Hund ein Tier.
  • Erweiterung der Funktionalität: Die Unterklasse kann eigene Attribute und Methoden hinzufügen oder geerbtes Verhalten überschreiben (ändern).
  • Polymorphismus: Zusammen mit dynamischer Dispatch ermöglicht Vererbung die Behandlung von Objekten verschiedener Typen, wobei auf die Basisklasse verwiesen wird.

Beispiel in Python:

class Animal:
    # Basisklasse
    def __init__(self, name):
        self.name = name

    def make_sound(self):
        pass # Leere Methode, wird in Unterklassen überschrieben

class Dog(Animal):
    # Unterklasse
    def __init__(self, name, breed):
        super().__init__(name) # Aufruf des Konstruktors der Basisklasse
        self.breed = breed

    def make_sound(self):
        # Überschreiben der Methode make_sound
        print("Woof!")

# Verwendung
my_dog = Dog("Бобик", "Oberhund")
print(my_dog.name) # Ererbtes Attribut
my_dog.make_sound() # Überschriebene Methode