nraynaud a écrit :
Plus que ça, celon le preincipe de substitution de Liskov, si tu hérites de Jpanel, tu _es_ un JPanel, dans le cas où tu fais hériter un composant de JPanel, tu fais quoi des add(), des pack() et de tout le bordel dédiés à gérer le contenu de ton panel ? Tu ne peux pas les réécrire en mettant du code vide dedans à cause (entre autres) de l'invariant qui dit que si un utilisateur fait un add(sonComponent), il est _sûr_ de le retrouver en cherchant dans le contenu du panel.
d'autre part, le code et les données héritées d'un JPanel sont becoup trop importants pour faire une simple vue.
JPanel, on l'étend si on veut faire un joli panel avec des fleurs sur les côtés, mais avec un joli trou dedans pour afficher ce que l'uitilisateur de la classe veut mettre comme composants dedans. Pas pour faire un truc dont le contenu est fixe et qui n'a pas de place prévue pour que les utilisateurs mettent leur composants à eux.
|