Chapitre 17. Sujets avancés
Lorsque nous avons étudié l'héritage pour la première fois au chapitre 14, notre objectif était d'éviter la duplication du code. Nous avons remarqué que les jeux de cartes et les mains de cartes avaient des fonctionnalités communes, et nous avons conçu une classe CardCollection pour les fournir. Cette technique est un exemple de généralisation. En généralisant le code, nous avons pu le réutiliser dans les classes Deck et Hand.
Au chapitre 15, nous avons examiné l'héritage d'un point de vue différent. Lorsque nous avons conçu GridCanvas pour représenter une grille de cellules, nous avons étendu Canvas et remplacé sa méthode paint. Cette conception est un exemple de spécialisation. En utilisant le code fourni par Canvas, nous avons créé une sous-classe spécialisée avec un minimum de code supplémentaire.
Nous n'avons pas écrit le code de Canvas; il fait partie de la bibliothèque Java. Mais nous avons pu l'adapter à nos propres besoins. En fait, la classe Canvas a été explicitement conçue pour être étendue.
Dans ce chapitre, nous allons approfondir le concept d'héritage et explorer la programmation pilotée par les événements. Nous continuerons à développer des simulations graphiques comme exemple courant, mais cette fois-ci en variant les formes et les couleurs !
Objets polygonaux
Le mot polygone signifie plusieurs angles; les ...