LoslegenKostenlos starten

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

<Kurs>Objektorientierte Programmierung in Python</Kurs>
Kurs ansehen

Interaktive praktische Übung

Verwandle Theorie mit einer unserer interaktiven Übungen in die Praxis

Übung starten