Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Héritage multiple avec extends ?

3 réponses
Avatar
Thibaut Desmarest
Bonjour à tous,

je m'en remet à votre experience et à vos connaissances à tous car je
viens de découvrir quelquechose d'étrange.
J'ai toujours appris qu'en java l'héritage multiple n'existait pas, ou
du moins pas directement. Il faut implémenter des interfaces car on ne
peut faire qu'un seul extends.

Or, en jetant un oeil à la javadoc, j'ai trouvé l'interface
MouseInputListener qui "extends" à la fois MouseListener et
MouseMotionListener.

On m'aurait menti ? Ou bien n'est ce possible qu'avec des interfaces ?


Merci d'avance,


Thibaut

3 réponses

Avatar
Yogo
"Thibaut Desmarest" a écrit:
...

Or, en jetant un oeil à la javadoc, j'ai trouvé l'interface
MouseInputListener qui "extends" à la fois MouseListener et
MouseMotionListener.

On m'aurait menti ? Ou bien n'est ce possible qu'avec des interfaces ?

...


Ce n'est en effet possible qu'avec les interfaces.


Yogo

Avatar
Xavier
Ce n'est en effet possible qu'avec les interfaces.


Et oui, car une classe ne peut dériver que d'une seule autre classe, mais
elle peut implémenter autant d'interface qu'elle veut. D'où la possiblité de
déclarer une interface en implémentant plusieurs, c'est de l'implémentation
de classe, pas de la dérivation.

Xavier

Avatar
Thibaut Desmarest
Xavier wrote:
Ce n'est en effet possible qu'avec les interfaces.



Et oui, car une classe ne peut dériver que d'une seule autre classe, mais
elle peut implémenter autant d'interface qu'elle veut. D'où la possiblité de
déclarer une interface en implémentant plusieurs, c'est de l'implémentation
de classe, pas de la dérivation.

Xavier


Merci à tous, j'avoue que j'ai eu peur là ;)