Maison >Java >javaDidacticiel >Comment implémenter l'interface en Java ? Utilisation de l'interface
Le contenu de cet article est de présenter comment implémenter des interfaces en Java ? L’utilisation d’interfaces permet à chacun d’avoir une compréhension simple des interfaces. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
En Java, les interfaces, comme les classes, peuvent avoir des méthodes et des variables, mais les méthodes déclarées dans les interfaces sont abstraites par défaut (uniquement les signatures de méthodes, pas de corps).
L'interface spécifie quelles opérations une classe doit effectuer, pas comment les faire fonctionner. Si une classe implémente une interface et ne fournit pas de corps de méthode pour toutes les fonctions spécifiées dans l'interface, la classe doit être déclarée abstraite.
Syntaxe de base de l'interface :
interface <interface_name> { // 声明常量字段 // 声明抽象方法 // 默认情况下 }
Pour déclarer une interface, utilisez le mot clé interface. Il est utilisé pour fournir une abstraction complète. Cela signifie que toutes les méthodes de l'interface sont déclarées avec un corps vide et sont publiques, et que tous les champs sont publics, statiques et finaux par défaut.
Pour implémenter une interface, utilisez le mot-clé Implements. Une classe qui implémente une interface doit implémenter toutes les méthodes déclarées dans l'interface.
Pourquoi utiliser des interfaces ?
1. Il est utilisé pour réaliser une abstraction complète.
2. Puisque Java ne prend pas en charge l'héritage multiple dans le cas des classes, il peut réaliser un héritage multiple en utilisant des interfaces.
3. Il est également utilisé pour réaliser un couplage lâche.
4. Les interfaces sont utilisées pour réaliser l'abstraction. La question se pose donc de savoir pourquoi utiliser une interface alors que nous avons une classe abstraite ?
La raison est que les classes abstraites peuvent contenir des variables non finales, alors que les variables de l'interface sont finales, publiques et statiques.
// 一个简单的接口 interface Player { final int id = 10; int move(); }
Implémentation de l'interface
Pour implémenter l'interface, on utilise le mot-clé :implémenter
Exemple simple :
Prenons un exemple de Vélo, Vélo, Voiture, etc., qui ont des fonctions communes. Nous avons donc construit une interface et rassemblé toutes ces fonctionnalités communes. Laissez Bicylce, Bike, car...etc. implémenter toutes ces fonctionnalités dans leurs propres classes à leur manière.
import java.io.*; interface Vehicle { // 一切都是抽象的方法 void changeGear(int a); void speedUp(int a); void applyBrakes(int a); } class Bicycle implements Vehicle{ int speed; int gear; // 换档 @Override public void changeGear(int newGear){ gear = newGear; } // to increase speed @Override public void speedUp(int increment){ speed = speed + increment; } // 降低速度 @Override public void applyBrakes(int decrement){ speed = speed - decrement; } public void printStates() { System.out.println("speed: " + speed + " gear: " + gear); } } class Bike implements Vehicle { int speed; int gear; // to change gear @Override public void changeGear(int newGear){ gear = newGear; } // to increase speed @Override public void speedUp(int increment){ speed = speed + increment; } // to decrease speed @Override public void applyBrakes(int decrement){ speed = speed - decrement; } public void printStates() { System.out.println("speed: " + speed + " gear: " + gear); } } class GFG { public static void main (String[] args) { // creating an inatance of Bicycle // doing some operations Bicycle bicycle = new Bicycle(); bicycle.changeGear(2); bicycle.speedUp(3); bicycle.applyBrakes(1); System.out.println("Bicycle present state :"); bicycle.printStates(); // creating instance of bike. Bike bike = new Bike(); bike.changeGear(1); bike.speedUp(4); bike.applyBrakes(3); System.out.println("Bike present state :"); bike.printStates(); } }
Résumé : Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun. Plus de didacticiels vidéo connexes : Tutoriel 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!