En langage Java, les interfaces sont implémentées par des classes afin d'utiliser les méthodes de l'interface. Une classe doit déclarer qu'elle implémente une ou plusieurs interfaces à l'aide du mot clé Implements dans la déclaration de classe. Si vous implémentez plusieurs interfaces, séparez les noms d'interface par des virgules.
Par exemple:
classAimplementsPrintable, Addable//Class A implémente les interfaces Printable et Addable classDogextendsAnimalimplementsEatable, Sleepable//La sous-classe Animal's Dog implémente les interfaces Eatable et Sleepable
Si une classe non abstraite implémente une interface, alors la classe doit remplacer toutes les méthodes de l'interface.
Remarque : étant donné que les méthodes de l'interface doivent être des méthodes abstraites publiques , lorsque la classe remplace la méthode d'interface, elle doit non seulement supprimer le modificateur abstrait, mais également fournir le corps de la méthode, et les droits d'accès de la méthode doivent être clairement modifiés avec publique.
Si une classe non abstraite qui implémente une interface implémente une méthode dans l'interface, cela équivaut à donner la fonction comportementale spécifique de la méthode. Les utilisateurs peuvent également personnaliser les interfaces et un fichier source Java peut être composé de classes et d'interfaces.
Si une classe déclare implémenter une interface mais ne remplace pas toutes les méthodes de l'interface, alors la classe doit être une classe abstraite, c'est-à-dire que la classe abstraite peut soit remplacer les méthodes de l'interface, soit posséder directement les méthodes de l'interface. interface.
Détails:
Les programmes peuvent utiliser le nom de l'interface pour accéder aux constantes de l'interface, mais si une classe implémente l'interface, la classe peut alors utiliser les constantes de l'interface directement dans le corps de la classe.
Lors de la définition d'une interface, si le mot-clé interface est précédé du mot-clé public, on l'appelle une interface publique , et l'interface publique peut être implémentée par n'importe quelle classe si le mot-clé public n'est pas ajouté, on l'appelle une interface conviviale ; l'interface conviviale peut être utilisée avec cette classe. L'interface est implémentée par les classes du même package.
Si la classe parent implémente une interface, alors la sous-classe implémentera naturellement l'interface. C'est-à-dire que la sous-classe n'a plus besoin d'utiliser le mot-clé Implements pour déclarer l'implémentation de cette interface.
Les interfaces peuvent également être héritées, c'est-à-dire que vous pouvez déclarer qu'une interface est une sous-interface d'une autre interface via le mot-clé extends. Étant donné que les méthodes et constantes de l’interface sont communes, la sous-interface héritera de toutes les méthodes et constantes de l’interface parent.
Remarque : les interfaces fournies par Java sont toutes dans les packages correspondants. Grâce à l'instruction d'importation, non seulement les classes du package peuvent être introduites, mais également les interfaces du package.
Par exemple:
importjava.io.*;//À ce stade, non seulement les classes du package java.io sont présentées, mais également les interfaces du package.