LoslegenKostenlos loslegen

Polymorphe Methoden

Um Klassen sinnvoll zu entwerfen, musst du verstehen, wie Vererbung und Polymorphismus zusammenwirken.

In dieser Übung gibt es drei Klassen – eine Elternklasse und zwei Kindklassen – und jede hat eine talk()-Methode. Analysiere den folgenden Code:

class Parent:
    def talk(self):
        print("Parent talking!")     

class Child(Parent):
    def talk(self):
        print("Child talking!")          

class TalkativeChild(Parent):
    def talk(self):
        print("TalkativeChild talking!")
        Parent.talk(self)


p, c, tc = Parent(), Child(), TalkativeChild()

for obj in (p, c, tc):
    obj.talk()

Was ist die Ausgabe des obigen Codes?

1. 2.

Parent talking!
Parent talking!
Parent talking!      

      

Parent talking!
Child talking!
Talkative Child talking!     
      
      
3. 4.

Parent talking!
Child talking!
Parent talking! 
Talkative Child talking!
Parent talking!      
      
      

Parent talking!
Child talking!
Talkative Child talking!
Parent talking!      

      

Du solltest die Aufgabe allein durch Lesen des Codes lösen können, ohne ihn in der Konsole auszuführen!

Diese Übung ist Teil des Kurses

Objektorientierte Programmierung in Python

Kurs anzeigen

Interaktive Übung

In dieser interaktiven Übung kannst du die Theorie in die Praxis umsetzen.

Übung starten