/ / Héritage d'interface est un héritage public, tandis que l'héritage d'implémentation est un héritage privé - java, héritage

L'héritage de l'interface est l'héritage public, tandis que l'héritage de l'implémentation est l'héritage privé - java, héritage

Existe-t-il une notion de "l'héritage d'interface est l'héritage public, alors que l'héritage d'implémentation est l'héritage privé" en java?

J'ai lu ce poster.

Réponses:

0 pour la réponse № 1

J'ai lu le message que vous avez lié. Dans ce billet, Péter Török parle de Héritage privé le suivant:

Cependant, si B hérite en privé de A, Best implémenté en termes de A: seule l'implémentation de A est héritée, pas son interface. Ainsi, les objets B (références / pointeurs) ne peuvent pas être utilisés aux endroits où des objets A sont attendus.

Je ne pense pas qu’il existe une telle chose à Java Héritage privé, du moins dans les termes exprimés ci-dessus.

Donc, après avoir lu le post et vu cela en Java:

  • Héritage d'interface est liée aux interfaces et aux classes implémentant ces interfaces, et
  • Héritage d'implémentation est liée à la spécialisation de classe

Je pense que ce n'est pas possible le cas où vous créez une classe B qui implémente une interface A ou prolonge une classe Aet cette classe B ne pouvait pas être utilisé comme A.