Skip to main content

Qu'est-ce que la hiérarchie des classes?

Une hiérarchie de classe, également appelée taxonomie de classe, est un groupe de classes connexes qui sont connectées par l'héritage pour faire des choses similaires.Le haut de la hiérarchie peut être une classe de base unique à partir de laquelle toutes les autres classes en dessous sont dérivées, ou la hiérarchie peut avoir plusieurs classes de base dont les fonctionnalités se fusionnent plus tard dans une ou plusieurs classes dérivées.Les relations entre les classes peuvent être illustrées comme des arbres, et chaque petit arbre dans la grande taxonomie peut également être considéré comme une hiérarchie.

Toutes les hiérarchies de classe ne peuvent pas avoir de racines multiples, et la structure de toute hiérarchie de classe ne dépend pas en grande partie de la langue que sa langueÉcrit. C ++ permet un héritage multiple, de sorte que des hiérarchies complexes peuvent être construites avec plusieurs racines et plusieurs arbres qui fusionnent les uns dans les autres.Java , en revanche, est limité à l'héritage unique, de sorte que ses relations de classe sont généralement plus simples, construites comme des arbres relativement autonomes avec une seule racine.L'héritage de l'interface peut ajouter une certaine complexité à une hiérarchie de classe dans Java , mais les interfaces ne sont presque jamais invoquées dans un cadre si complexe que ce serait comme fusionner les arbres ensemble.

Les composants d'une hiérarchie de classe peuvent varier en type et en fonction, cartant que les règles de la langue sont toujours suivies par rapport à l'héritage.Les cours d'une hiérarchie peuvent être publics, protégés, abstraits, concrets ou virtuels.Les interfaces, les fonctions globales et les amis peuvent également être utilisés.Selon le langage informatique, certains de ces types peuvent se donner mieux à l'héritage que d'autres.En général, les hiérarchies sont très flexibles et peuvent être utilisées à bien des égards à de nombreuses fins.

Il n'y a pas de règles difficiles concernant les types particuliers de classes doivent être placées dans une hiérarchie.Toute classe peut en théorie être l'un des types mentionnés ci-dessus.En général, les dernières classes de la hiérarchie qui n'ont pas de classes dérivées en dessous devraient être publiques et concrètes.Étant donné que les hiérarchies de classe purement abstraites peuvent également exister, cependant, ce n'est qu'une règle de base.

Bien qu'une hiérarchie de classe puisse être un outil utile pour organiser le code et encapsuler les fonctionnalités, il peut y avoir des moments où se plonger trop profondément dans une hiérarchie peutConfusez en fait le code, plutôt que de le clarifier et de le rendre plus facile à entretenir.La construction d'une relation robuste entre de nombreuses classes prend une certaine prévoyance;Bien qu'il puisse initialement être plus facile de diviser le code en de nombreux petits morceaux, ces petits morceaux peuvent devenir plus difficiles à gérer plus tard.Lorsqu'il est construit correctement, une hiérarchie de classe aide à la fois les développeurs et les utilisateurs pour déterminer le fonctionnement des classes.S'il est construit sans maintenance et clarté à l'esprit, les nombreux niveaux d'héritage peuvent être déroutants à regarder et à comprendre.