Maison >Java >javaDidacticiel >Les interfaces peuvent-elles appeler des méthodes de la classe « Object » en Java ?
En Java, les interfaces sont des entités déclarées qui définissent un contrat à implémenter pour une classe. Contrairement aux classes, les interfaces n'héritent pas directement de la classe Object.
Cependant, même si elles n'héritent pas explicitement d'Object, les interfaces peuvent toujours appeler des méthodes définies dans la classe Object. En effet, les interfaces déclarent implicitement des méthodes abstraites publiques pour chaque méthode publique de la classe Object.
Par exemple, considérons le code suivant :
<code class="java">public class Test { public static void main(String[] args) { Employee e = null; e.equals(null); } } interface Employee { }</code>
Dans ce code, même si Employee est un interface et n'hérite pas explicitement d'Object, le compilateur Java reconnaît qu'une interface déclare implicitement la méthode equals, lui permettant d'être appelée sur une instance Employee.
Ce comportement est spécifié dans la spécification du langage Java, section 9.2. , qui indique qu'une interface sans superinterface directe déclare implicitement une méthode membre abstraite publique pour chaque méthode d'instance publique déclarée dans Object. Cela garantit que les interfaces peuvent interagir avec la classe Object et ses méthodes sans en hériter explicitement.
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!