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

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

Barbara Streisand
Libérer: 2024-10-29 09:23:02
original
881 Les gens l'ont consulté

Do Interfaces Inherit from the Object Class in Java?

Interfaces et classe 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 de l'interface :

  • Si une interface n'a pas de superinterfaces directes, elle déclare implicitement une méthode membre abstraite publique pour chaque méthode d'instance publique dans Object.
  • Cela s'applique à moins qu'une méthode avec la même signature, le même type de retour et une clause throws compatible soit 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.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal