Héritage Python

L’héritage est un concept de la programmation orientée objet qui permet à une classe de dériver de (ou d’hériter de) une autre classe. Lorsqu’une classe hérite d’une autre classe, elle peut utiliser toutes les propriétés et méthodes de la classe parente, ainsi que définir de nouvelles propriétés et méthodes ou redéfinir celles héritées.

Voici un exemple simple d’héritage en Python:

 

class Animal:
  def __init__(self, name, species):
    self.name = name
    self.species = species

  def make_sound(self):
    print("Some generic animal sound")

class Dog(Animal):
  def __init__(self, name, breed):
    super().__init__(name, species="Dog")
    self.breed = breed

  def make_sound(self):
    print("Woof!")

# Créer un objet de la classe Dog
dog1 = Dog("Fido", "Labrador")

# Accéder aux propriétés de l'objet
print(dog1.name)  # Output: "Fido"
print(dog1.species) # Output: "Dog"
print(dog1.breed)  # Output: "Labrador"

# Appeler les méthodes de l'objet
dog1.make_sound()  # Output: "Woof!"

Dans cet exemple, la classe

Dog

hérite de la classe

Animal

. Elle utilise le mot-clé

class

suivi du nom de la classe et des parenthèses pour déclarer la classe

Dog

. Dans les parenthèses, nous spécifions le nom de la classe parente, qui est

Animal

. La classe

Dog

hérite automatiquement toutes les propriétés et méthodes de la classe

Animal

.

La classe

Dog

définit également sa propre méthode

__init__

, qui appelle la méthode

__init__

de la classe parente en utilisant la fonction

super()

. Cela permet de définir la propriété

species

de l’objet comme étant “Dog”. La classe

Dog

définit également la propriété

breed

et redéfinit la méthode

make_sound

, qui imprime “Woof!” au lieu du message générique défini dans la classe parente.

Lorsque nous créons un objet de la classe

Dog

avec

dog1 = Dog("Fido", "Labrador")

, nous pouvons accéder aux propriétés

name

,

species

et

breed

de l’objet et appeler la méthode

make_sound

. La méthode

make_sound

de l’objet

dog1

est la méthode redéfinie de la classe

Dog

, qui imprime

Please follow and like us:
Pin Share