Polymorphismus
Erkunden Sie fortgeschrittene OOP-Konzepte.
Polymorphismus ist eine kostenlose Python For Kids-Lektion auf CoddyKit. Dies ist Lektion 5 von 5. 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 For Kids-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Python For Kids-Kurs umfasst insgesamt 5 Lektionen.
Polymorphismus
Willkommen zurück bei der Lektion zur objektorientierten Programmierung (OOP)! Heute erkunden wir den Polymorphismus in Python – ein leistungsfähiges Konzept, durch das Objekte mehrere Formen annehmen können.

Was ist Polymorphismus?
Polymorphismus ist ein grundlegendes Konzept der OOP. Er ermöglicht es, Objekte verschiedener Klassen wie Objekte einer gemeinsamen Oberklasse zu behandeln. Dadurch kann sich dieselbe Methode je nach Objekt, das sie aufruft, unterschiedlich verhalten.
- Definition: „Viele Formen“ – die Fähigkeit verschiedener Objekte, auf denselben Methodenaufruf jeweils einzigartig zu reagieren.
- Zweck: Verbessert die Flexibilität und Integration von Code, indem austauschbare Objekte ermöglicht werden.
Sehen wir uns an, wie Polymorphismus in Python funktioniert!
Polymorphismus implementieren
Polymorphismus lässt sich in Python durch das Überschreiben von Methoden und durch die Verwendung integrierter Funktionen erreichen, die mit verschiedenen Objekttypen arbeiten.
- Überschreiben von Methoden: Eine Methode in einer Kindklasse neu definieren, die bereits in der Elternklasse definiert wurde.
- Integrierte Funktionen: Funktionen wie
len(), die mit verschiedenen Datentypen funktionieren.
Sehen wir uns das Überschreiben von Methoden nun genauer an.
Überschreiben von Methoden
Durch das Überschreiben von Methoden kann eine Kindklasse eine spezifische Implementierung einer Methode bereitstellen, die bereits in ihrer Elternklasse definiert wurde. Dies ist ein wesentlicher Aspekt des Polymorphismus.
Beispiel:
# Defines the Animal parent class with a speak method
class Animal:
def speak(self):
print("The animal makes a sound.") # Generic speak method
Kindklassen mit überschriebenen Methoden erstellen
Erstellen wir Kindklassen, die von Animal erben und die Methode speak überschreiben, um spezifische Verhaltensweisen bereitzustellen.
Beispiel:
# Defines the Dog child class inheriting from Animal
class Dog(Animal):
def speak(self):
print("The dog barks.") # Overridden speak method
# Defines the Cat child class inheriting from Animal
class Cat(Animal):
def speak(self):
print("The cat meows.") # Overridden speak method
Polymorphismus mit überschriebenen Methoden verwenden
Erstellen wir nun Objekte der Kindklassen und sehen uns an, wie sie mithilfe desselben Methodennamens unterschiedliche Verhaltensweisen zeigen.
Beispiel:
# Creates objects of Dog and Cat classes
dog = Dog()
cat = Cat()
# Calls the speak method on both objects
dog.speak() # Output: The dog barks.
cat.speak() # Output: The cat meows.
Polymorphismus mit integrierten Funktionen
Polymorphismus ist nicht auf selbst definierte Klassen beschränkt. Integrierte Python-Funktionen wie len() funktionieren mit verschiedenen Datentypen und demonstrieren so polymorphes Verhalten.
Beispiel:
# Uses len() with a list
my_list = [1, 2, 3, 4]
print(len(my_list)) # Output: 4
# Uses len() with a string
my_string = "Hello"
print(len(my_string)) # Output: 5
# Uses len() with a dictionary
my_dict = {"a": 1, "b": 2}
print(len(my_dict)) # Output: 2
Beispielprogramm: Flächenberechnung von Formen
Erstellen wir ein Programm, das mithilfe von Polymorphismus die Fläche verschiedener Formen berechnet. Wir definieren eine Elternklasse Shape sowie die Kindklassen Circle und Rectangle, die die Methode area überschreiben.
Code:
# Defines the Shape parent class with an area method
class Shape:
def area(self):
pass # Placeholder method
# Defines the Circle child class inheriting from Shape
class Circle(Shape):
def __init__(self, radius):
self.radius = radius # Sets the radius of the circle
def area(self):
return 3.14 * self.radius ** 2 # Calculates area of the circle
# Defines the Rectangle child class inheriting from Shape
class Rectangle(Shape):
def __init__(self, width, height):
self.width = width # Sets the width of the rectangle
self.height = height # Sets the height of the rectangle
def area(self):
return self.width * self.height # Calculates area of the rectangle
# Creates objects of Circle and Rectangle classes
circle = Circle(5)
rectangle = Rectangle(4, 6)
# Calculates and prints areas using polymorphism
print("Circle Area:", circle.area()) # Output: Circle Area: 78.5
print("Rectangle Area:", rectangle.area()) # Output: Rectangle Area: 24
# Defines the Vehicle parent class with a move method
class Vehicle:
def move(self):
print("The vehicle moves.")
# Defines the Bicycle child class inheriting from Vehicle
class Bicycle(Vehicle):
def move(self):
print("The bicycle pedals forward.")
# Defines the Airplane child class inheriting from Vehicle
class Airplane(Vehicle):
def move(self):
print("The airplane flies in the sky.")
# Creates objects of Bicycle and Airplane classes
bike = Bicycle()
plane = Airplane()
# Calls the move method on both objects
bike.move()
plane.move()
Großartige Arbeit!
Sie haben den Polymorphismus in Python kennengelernt und erfahren, wie Objekte verschiedener Klassen auf dieselben Methodenaufrufe jeweils einzigartig reagieren können. Polymorphismus erhöht die Flexibilität und Skalierbarkeit Ihres Codes und erleichtert dadurch dessen Verwaltung und Erweiterung. Üben Sie weiter, indem Sie weitere Klassen und Methoden erstellen, die polymorphes Verhalten nutzen, um Ihr Verständnis zu vertiefen!

Häufig gestellte Fragen
Ist die Lektion „Polymorphismus “ kostenlos?
Ja — der vollständige Text von „Polymorphismus “ 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 For Kids-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Python For Kids-Kurs umfasst insgesamt 5 Lektionen.
Was lerne ich in „Polymorphismus “?
Erkunden Sie fortgeschrittene OOP-Konzepte. Du übst Python For Kids 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 For Kids zu starten?
Keine Vorkenntnisse erforderlich. Python For Kids 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 5 von 5.
Wie lange dauert die Lektion „Polymorphismus “?
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 For Kids-Lektion Code schreiben und ausführen?
Ja. Jede Python For Kids-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.