Auteur : Åvygeil
V) Héritage
Le concept d'héritage est étroitement lié à la conception orientée objet.
On dit qu'une classe A hérite ou dérive d'une autre B lorsque,
conceptuellement, A est une spécification de B.
Ainsi, A aura accès aux mêmes méthodes que B, et également aux siennes plus
spécifiques, alors que B n'aura pas accès aux méthodes de A.
On dit que A est une sous-classe de B, et B une super-classe de A.
- Créons par exemple une sous-classe de Voiture.
Dans le script Voiture (ce n'est pas obligatoire, c'est simplement par soucis de
place...) créez une nouvelle classe Porshe dérivant de Voiture.
Le < définit le lien d'héritage entre Voiture et Porshe.
Passons à présent à la méthode constructeur. super appelle le constructeur de la super-classe Voiture.
- On peut également redéfinir des méthodes ; par exemple la méthode accelere : au lieu d'ajouter «a» à la vitesse, on la multiplie en plus par la puissance.
Tapez dans la classe Porshe
Ainsi, si on tape dans le script Main
on appelle la méthode accelere de Porshe et non celle de Voiture.Testez le en modifiant les 2 évènements créés plus haut.
Une autre manière, plus difficile à appréhender, est d'utiliser le mot clé super ainsi :
Déjà vu dans la méthode initialize, le vrai rôle de super est
d'appeler la méthode ayant le même nom au sein de la super-classe.
L'opérateur *= multiplie la vitesse par la puissance.
Mais attention avec les redéfinitions de méthodes, car plus jamais une Porshe
ne pourra appeler la méthode accelere de Voiture.

