Polymorphie
Erkunden Sie, wie Polymorphie flexiblen und dynamischen Code ermöglicht.
Polymorphie ist eine kostenlose Python Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 6. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Python Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Python Academy-Kurs umfasst insgesamt 6 Lektionen.
Einführung in die Polymorphie
Einführung in die Polymorphie
Polymorphie ist ein zentrales Konzept der objektorientierten Programmierung (OOP). Sie ermöglicht es, Objekte verschiedener Klassen als Objekte einer gemeinsamen Oberklasse zu behandeln. Dadurch wird der Code flexibler und wiederverwendbar.
In dieser Lektion lernen Sie, wie Sie Polymorphie in Python mithilfe von Methoden und Klassen implementieren.

Was ist Polymorphie?
Was ist Polymorphie?
Polymorphie ermöglicht es Methoden in verschiedenen Klassen, denselben Namen zu verwenden und sich dennoch unterschiedlich zu verhalten. Dadurch wird der Code flexibler und lässt sich leichter erweitern.
# Defining a superclass
class Animal:
# Method in the superclass
def speak(self):
print("Animal speaks") # Generic message for all animals
# Defining a subclass that overrides the speak method
class Dog(Animal):
def speak(self):
print("Dog barks") # Specific behavior for DogPolymorphie mit Methoden
Polymorphie mit Methoden
Methoden mit demselben Namen können in verschiedenen Klassen unterschiedliche Implementierungen bereitstellen.
# Another subclass with its own implementation of the speak method
class Cat(Animal):
def speak(self):
print("Cat meows") # Specific behavior for Cat
# Function demonstrating polymorphism
# It can accept objects of any subclass of Animal
def animal_sound(animal):
animal.speak() # Calls the appropriate speak method based on the object type
# Creating objects of Dog and Cat
dog = Dog()
cat = Cat()
# Calling the function with different objects
animal_sound(dog) # Outputs: Dog barks
animal_sound(cat) # Outputs: Cat meowsBeispiel für Polymorphie mit Methoden
Polymorphie mit Methoden
Methoden mit demselben Namen können in verschiedenen Klassen unterschiedliche Implementierungen bereitstellen.
# Another subclass with its own implementation of the speak method
class Cat(Animal):
def speak(self):
print("Cat meows") # Specific behavior for Cat
# Function demonstrating polymorphism
# It can accept objects of any subclass of Animal
def animal_sound(animal):
animal.speak() # Calls the appropriate speak method based on the object type
# Creating objects of Dog and Cat
dog = Dog()
cat = Cat()
# Calling the function with different objects
animal_sound(dog) # Outputs: Dog barks
animal_sound(cat) # Outputs: Cat meowsPolymorphie mit Funktionen
Polymorphie mit Funktionen
Polymorphie ermöglicht es derselben Funktion, mit verschiedenen Objekttypen zu arbeiten.
# Defining two unrelated classes
class Bird:
def fly(self):
print("Bird flies") # Behavior specific to birds
class Plane:
def fly(self):
print("Plane flies") # Behavior specific to planes
# Function demonstrating polymorphism
# It can accept objects of both Bird and Plane
def flying_object(obj):
obj.fly() # Calls the appropriate fly method based on the object type
# Creating objects of Bird and Plane
bird = Bird()
plane = Plane()
# Calling the function with different objects
flying_object(bird) # Outputs: Bird flies
flying_object(plane) # Outputs: Plane fliesPolymorphie durch Vererbung
Polymorphie durch Vererbung
Polymorphie wird häufig durch Vererbung erreicht, bei der Unterklassen Methoden der Oberklasse überschreiben.
# Superclass representing a generic vehicle
class Vehicle:
def start(self):
print("Vehicle starts") # Generic behavior for all vehicles
# Subclass representing a specific type of vehicle
class Car(Vehicle):
def start(self):
print("Car starts") # Specific behavior for cars
# Subclass representing another specific type of vehicle
class Bike(Vehicle):
def start(self):
print("Bike starts") # Specific behavior for bikes
# Function demonstrating polymorphism
# It can accept objects of any subclass of Vehicle
def start_vehicle(vehicle):
vehicle.start() # Calls the appropriate start method based on the object type
# Creating objects of Car and Bike
car = Car()
bike = Bike()
# Calling the function with different objects
start_vehicle(car) # Outputs: Car starts
start_vehicle(bike) # Outputs: Bike startsVorteile der Polymorphie
Vorteile der Polymorphie
Polymorphie bietet mehrere Vorteile:
- Wiederverwendbarkeit und Flexibilität des Codes.
- Bessere Lesbarkeit und Strukturierung des Codes.
- Die Verwendung gemeinsamer Schnittstellen wird gefördert.
Beispiel aus der Praxis
Beispiel aus der Praxis
Hier sehen Sie ein Beispiel aus der Praxis, das Polymorphie verwendet.
# Real-world example of polymorphism
class Developer:
def work(self):
print("Writing code") # Specific task for developers
class Designer:
def work(self):
print("Designing user interfaces") # Specific task for designers
# Function demonstrating polymorphism
# It can accept objects of both Developer and Designer
def workday(employee):
employee.work() # Calls the appropriate work method based on the object type
# Creating objects of Developer and Designer
developer = Developer()
designer = Designer()
# Calling the function with different objects
workday(developer) # Outputs: Writing code
workday(designer) # Outputs: Designing user interfacesHäufige Fehler bei der Polymorphie
Häufige Fehler bei der Polymorphie
Diese Fehler sollten Sie vermeiden:
- Vergessen, erforderliche Methoden in Unterklassen zu überschreiben.
- Die Method Resolution Order (MRO) bei Mehrfachvererbung zu verwechseln.
- Polymorphie unnötigerweise für einfache Aufgaben zu verwenden.
Was haben Sie gelernt?
Was haben Sie gelernt?
In dieser Lektion haben Sie Folgendes gelernt:
- Was Polymorphie ist und wie sie in Python funktioniert.
- Wie Sie Polymorphie mit Methoden und Vererbung implementieren.
- Welche Vorteile die Verwendung von Polymorphie in der OOP bietet.
Sehr gut! Fahren Sie mit dem nächsten Thema fort.

Häufig gestellte Fragen
Ist die Lektion „Polymorphie“ kostenlos?
Ja — der vollständige Text von „Polymorphie“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Python Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Python Academy-Kurs umfasst insgesamt 6 Lektionen.
Was lerne ich in „Polymorphie“?
Erkunden Sie, wie Polymorphie flexiblen und dynamischen Code ermöglicht. Du übst Python Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Python Academy zu starten?
Keine Vorkenntnisse erforderlich. Python Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 6.
Wie lange dauert die Lektion „Polymorphie“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Python Academy-Lektion Code schreiben und ausführen?
Ja. Jede Python Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Klassen und Objekte
- Attribute und Methoden
- Vererbung
- Polymorphie
- Kapselung und Abstraktion
- Magische Methoden (__str__, __repr__ usw.)