Mais pourquoi une classe dérivée devrait-elle forcément redéfinir les comportement de ses classes parentes ?
Si j'ai une classe parente Voiture, on peut imaginer qu'elle ait un membre et un accesseur concernant la couleur, et il n'y a pas forcément de raison que cela soit redéfini dans les classes parentes. Si l'accesseur est la seule méthode publique de cette classe parente, et qu'on ne s'intéresse, à un moment donné, qu'à la couleur, pourquoi se trimballerait-on avec des objets complets plutôt qu'avec des objets de base, plus légers ? Cela permettrait en outre d'empêcher l'utilisateur d'accéder à des membres publics des classes dérivées.
Partager