Cependant, si vous faites référence au concept d'héritage et d'appel de méthodes à partir d'une classe parent, Ruby fournit le mot-clé « super ». Voici comment cela fonctionne :
Comprendre « super »
* Héritage : Dans Ruby, vous pouvez créer des classes qui héritent d'autres classes. Cela signifie que la classe enfant a automatiquement accès aux méthodes et attributs de la classe parent.
* Méthodes de remplacement : Vous pouvez remplacer les méthodes de la classe parent dans la classe enfant. Cela signifie que la classe enfant utilisera sa propre implémentation de la méthode lorsqu'elle sera appelée.
* Mot clé `super` : Si vous souhaitez appeler la méthode de la classe parent à l'intérieur de la méthode remplacée dans la classe enfant, vous utilisez le mot-clé `super`.
Exemple
```rubis
Véhicule de classe
def initialiser (marque)
@marque =marque
fin
définitivement commencer
met "Véhicule #{@brand} de départ..."
fin
fin
classe Voiture
super
met "Moteur démarré. Prêt à conduire!"
fin
fin
ma_voiture =Voiture.new("Toyota")
ma_voiture.start
```
Explication :
1. Nous définissons une classe `Vehicle` avec une méthode `start`.
2. Nous créons une classe `Car` qui hérite de `Vehicle`.
3. La classe `Car` remplace la méthode `start`, mais appelle `super` à l'intérieur pour exécuter la méthode `start` à partir de la classe parent `Vehicle`.
4. Lorsque nous créons un objet `Car` et appelons `start`, les méthodes `start` de `Vehicle` et `Car` sont exécutées.
Points clés :
* `super` appelle la méthode du même nom dans la classe parent.
* Vous pouvez passer des arguments à `super` pour les transmettre à la méthode parent.
* Si vous n'utilisez pas `super`, l'implémentation de la méthode par la classe enfant remplacera complètement la version du parent.
Si vous avez d'autres questions sur l'héritage ou le « super » dans Ruby, n'hésitez pas à les poser !