L'interface est définie comme suit :
[可见度] interface 接口名称 [extends 其他的接口名] { // 声明变量 // 抽象方法}
Le corps de l'interface contient des méthodes abstraites, mais toutes les méthodes au sein de l'interface (par définition ) are C'est une méthode abstraite, donc le mot-clé abstract n'est pas nécessaire dans l'interface. Puisqu’une interface représente un ensemble de comportements externes, toute méthode au sein de l’interface est publique.
Par exemple :
public interface Predator { boolean chasePrey(Prey p); void eatPrey(Prey p); }
Les membres dans l'interface sont statiques (static
), final
et publics (public
Au contraire, ils peuvent être du type). n'importe quelle classe ou interface.
Tutoriels vidéo associés recommandés : Tutoriel Java en ligne
Implémentation de l'interface :
public class Lion implements Predator { public boolean chasePrey(Prey p) { // programming to chase prey p (specifically for a lion) } public void eatPrey (Prey p) { // programming to eat prey p (specifically for a lion) } }
Instructions :
Si une classe implémente une interface mais n'implémente pas toutes les méthodes de l'interface, elle doit être marquée comme abstraite (classe abstraite). Une sous-classe d'une classe abstraite doit implémenter ses méthodes inachevées. Si la sous-classe n'implémente toujours pas toutes les méthodes de l'interface, alors la sous-classe doit quand même être marquée comme abstraite. L'interface
est généralement utilisée dans le langage de programmation Java pour les fonctions de rappel. Java ne permet pas de passer des méthodes en tant que paramètres. Par conséquent, une solution consiste à définir une interface et à utiliser cette interface comme paramètre de la méthode pour utiliser la signature de méthode de l'objet. L'interface
Sous-interface
peut être étendue en plusieurs interfaces différentes, vous pouvez utiliser la méthode décrite ci-dessus, par exemple :
public interface VenomousPredator extends Predator, Venomous { //介面主體 }
ci-dessus Le les fragments de programme sont des sous-interfaces légalement définies. Contrairement aux classes, les interfaces permettent un héritage multiple, et Predator
et Venomous
peuvent définir ou hériter de la même méthode, comme kill(Prey prey)
Lorsqu'une classe implémente VenomousPredator
, elle l'implémentera. les deux méthodes.
Articles et tutoriels connexes recommandés : Commencer à apprendre Java
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!