"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Les interfaces héritent-elles de la classe Object en Java ?

Les interfaces héritent-elles de la classe Object en Java ?

Publié le 2024-11-08
Parcourir:832

Do Interfaces Inherit from the Object Class in Java?

Interfaces et classes d'objets : héritage et invocation de méthodes

En Java, les interfaces offrent un moyen de définir des contrats que les classes peuvent implémenter. Lorsque l'on considère la relation entre les interfaces et la classe Object, cela soulève la question de l'héritage.

Les interfaces héritent-elles de la classe Object ?

La réponse est non . Les interfaces n'héritent pas de la classe Object. Contrairement aux classes, il n'y a pas d'héritage implicite d'une interface racine commune par toutes les interfaces.

Invocation de méthode sur les instances d'interface

Même si vous n'héritez pas d'Object, vous pouvez invoquer des méthodes comme equals() sur les instances d’interface. Comment est-ce possible ?

Chaque interface déclare implicitement une méthode abstraite publique pour chaque méthode publique dans Object. Par conséquent, même si une interface ne déclare pas explicitement la méthode equals(), elle est implicitement déclarée en tant que membre.

Détails de la spécification du langage Java

La spécification du langage Java (JLS) fournit des détails sur ce comportement au § 9.2 Membres d'interface :

  • Si une interface n'a pas de superinterfaces directes, elle déclare implicitement une méthode membre abstraite publique pour chaque instance publique. méthode dans Object.
  • Cela s'applique sauf si une méthode avec la même signature, le même type de retour et une clause throws compatible est explicitement déclarée par l'interface.

Conclusion

Les interfaces en Java n'héritent pas d'Object. Cependant, ils déclarent implicitement des méthodes pour toutes les méthodes Object publiques afin de garantir la compatibilité et de permettre l'invocation de méthodes sur les instances d'interface.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3