CommencerCommencer gratuitement

Méthodes polymorphes

Pour concevoir des classes de manière efficace, vous devez comprendre comment l'héritage et le polymorphisme fonctionnent ensemble.

Dans cet exercice, vous avez trois classes - un parent et deux enfants - qui ont chacune une méthode talk(). Analysez le code suivant :

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()

Quel est le résultat du code ci-dessus ?

1. 2.


Les parents parlent !
Les parents parlent !
Les parents parlent !      


      


Les parents parlent !
L'enfant parle !
Enfant bavard qui parle !     
      

      
3. 4.


Les parents parlent !
L'enfant parle !
Les parents parlent ! 
Enfant bavard qui parle !
Les parents parlent !      
      

      


Les parents parlent !
L'enfant parle !
Enfant bavard qui parle !
Les parents parlent !      


      

Vous devriez pouvoir faire l'exercice en lisant le code, sans l'exécuter dans la console !

Cet exercice fait partie du cours

Programmation orientée objet en Python

Afficher le cours

Exercice interactif pratique

Passez de la théorie à la pratique avec l’un de nos exercices interactifs

Commencer l’exercice