Skip to main content Aller au contenu principal

Imagine tu codes un jeu vidéo. Tu as Guerrier, Mage, Voleur. Ils ont tous un nom, une vie, et peuvent marcher. Tu ne vas pas réécrire le code 3 fois !

Tu crées une classe parente Personnage, et les autres Héritent d'elle.

class Personnage:
    def __init__(self, nom):
        self.nom = nom
        self.vie = 100

    def marcher(self):
        print(f"{self.nom} marche.")

# Guerrier HERITE de Personnage
class Guerrier(Personnage):
    def attaquer(self):
        print("COUP D'EPEE !")

class Mage(Personnage):
    def lancer_sort(self):
        print("BOULE DE FEU !")

conan = Guerrier("Conan")
conan.marcher() # Ça marche ! Il a hérité de la méthode
conan.attaquer() # Ça marche aussi

gandalf = Mage("Gandalf")
gandalf.marcher()
# gandalf.attaquer() -> ERREUR (Le mage ne sait pas attaquer à l'épée)