Polymorfiska metoder
För att designa klasser på ett effektivt sätt behöver du förstå hur arv och polymorfism fungerar tillsammans.
I den här övningen har du tre klasser – en föräldraklass och två barnklasser – där var och en har en talk()-metod. Analysera följande kod:
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()
Vad är utdata från koden ovan?
| 1. | 2. |
|
|
| 3. | 4. |
|
|
Du ska kunna lösa övningen enbart genom att läsa koden – utan att köra den i konsolen!
Den här övningen är en del av kursen
Objektorienterad programmering i Python
Interaktiv övning med praktiskt arbete
Gör teori till handling med en av våra interaktiva övningar
Starta övningen