Interface dans Java avec exemple
Qu'est-ce que l'interface dans Java?
An Interface dans Java Le langage de programmation est dรฉfini comme un absolutracLe type t est utilisรฉ pour spรฉcifier le comportement d'une classe. Java l'interface contient des constantes statiques et des valeurs absoluestracmรฉthodes t. Une classe peut implรฉmenter plusieurs interfaces. Dans JavaLes interfaces sont dรฉclarรฉes ร l'aide du mot-clรฉ `interface`. Toutes les mรฉthodes de l'interface sont implicitement publiques et absolues.tract.
Syntaxe de dรฉclaration de l'interface
Pour utiliser une interface dans votre classe, ajoutez le mot-clรฉ ยซ implรฉments ยป aprรจs le nom de votre classe suivi du nom de l'interface.
interface {
//methods
}
Exemple d'implรฉmentation de l'interface
Maintenant, comprenons l'interface dans Java avec exemple :
class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle
Cliquez ร nouveau ici si la vidรฉo n'est pas accessible
Pourquoi une interface est-elle requise ?
Comprendre l'utilisation de l'interface dans Java mieux, voyons un Java exemple d'interface. La classe ยซ Media Player ยป comprend deux sous-classes : lecteur CD et lecteur DVD. Chacun ayant sa propre implรฉmentation d'interface dans Java mรฉthode pour jouer de la musique.
Une autre classe ยซ Lecteur Combo ยป hรฉrite ร la fois du CD et du DVD (voir l'image ci-dessous). De quelle mรฉthode de jeu doit-il hรฉriter ? Cela peut entraรฎner de sรฉrieux problรจmes de conception. Et par consรฉquent, Java ne permet pas plusieurs hรฉritage.
Prenons maintenant un autre exemple de Dog.
Supposons que vous ayez une exigence selon laquelle la classe ยซ chien ยป hรฉrite des classes ยซ animal ยป et ยซ Pet ยป (voir l'image ci-dessous). Mais vous ne pouvez pas prolonger deux classes dans Java. Alors que ferais-tu ? La solution est l'Interface.
Le livre de rรจgles de l'interface dit :
- A Java L'interface implรฉmentรฉe est 100% absoluetracclasse t et n'a que Abdostracmรฉthodes t.
- La classe peut implรฉmenter n'importe quel nombre d'interfaces.
La classe Dog peut s'รฉtendre ร la classe ยซ Animal ยป et implรฉmenter une interface en tant que ยซ Pet ยป.
Java Exemple d'interface :
Comprenons le programme d'interface ci-dessous dans Java:
รtape 1) Copiez le code suivant dans un รฉditeur.
interface Pet{
public void test();
}
class Dog implements Pet{
public void test(){
System.out.println("Interface Method Implemented");
}
public static void main(String args[]){
Pet p = new Dog();
p.test();
}
}
รtape 2) Enregistrez, compilez et exรฉcutez le code. Observez la sortie de l'interface dans Java programme.
Diffรฉrence entre classe et interface
| En classe, vous pouvez instancier une variable et crรฉer un objet. | Dans une interface, vous ne pouvez pas instancier une variable et crรฉer un objet. |
| La classe peut contenir des mรฉthodes concrรจtes (avec implรฉmentation) | L'interface ne peut pas contenir de mรฉthodes concrรจtes (avec implรฉmentation) |
| Les spรฉcificateurs d'accรจs utilisรฉs avec les classes sont privรฉs, protรฉgรฉs et publics. | Dans l'interface, un seul spรฉcificateur est utilisรฉ : Public. |
Quand utiliser Interface et AbstracClasse T ?
- Utilisez un abdominaltracclasse t lorsqu'un modรจle doit รชtre dรฉfini pour un groupe de sous-classes
- Utiliser une interface lorsqu'un rรดle doit รชtre dรฉfini pour d'autres classes, quel que soit l'arbre d'hรฉritage de ces classes
Doit connaรฎtre des faits sur l'interface
- A Java la classe peut implรฉmenter plusieurs Java Interfaces. Il faut que la classe implรฉmente toutes les mรฉthodes dรฉclarรฉes dans les interfaces.
- La classe devrait primer sur tous les abstracles mรฉthodes dรฉclarรฉes dans l'interface
- L'interface permet d'envoyer un message ร un objet sans se prรฉoccuper des classes auxquelles il appartient.
- La classe doit fournir des fonctionnalitรฉs pour les mรฉthodes dรฉclarรฉes dans l'interface.
- Toutes les mรฉthodes d'une interface sont implicitement publiques et absoluestract
- Une interface ne peut pas รชtre instanciรฉe
- Une rรฉfรฉrence d'interface peut pointer vers des objets de ses classes d'implรฉmentation
- Une interface peut s'รฉtendre ร partir d'une ou plusieurs interfaces. La classe ne peut รฉtendre qu'une seule classe mais implรฉmenter n'importe quel nombre d'interfaces
- Une interface ne peut pas implรฉmenter une autre interface. Il doit รฉtendre une autre interface si nรฉcessaire.
- Une interface dรฉclarรฉe dans une autre interface est appelรฉe interface imbriquรฉe.
- Au moment de la dรฉclaration, la variable d'interface doit รชtre initialisรฉe. Sinon, le compilateur gรฉnรฉrera une erreur.
- La classe ne peut pas implรฉmenter deux interfaces en Java qui ont des mรฉthodes portant le mรชme nom mais un type de retour diffรฉrent.
Rรฉsumรฉโฏ:
- La classe qui implรฉmente l'interface doit fournir des fonctionnalitรฉs pour les mรฉthodes dรฉclarรฉes dans l'interface
- Toutes les mรฉthodes d'une interface sont implicitement publiques et absoluestract
- Une interface ne peut pas รชtre instanciรฉe
- Une rรฉfรฉrence d'interface peut pointer vers des objets de ses classes d'implรฉmentation
- Une interface peut s'รฉtendre ร partir d'une ou plusieurs interfaces. Une classe ne peut รฉtendre qu'une seule classe mais implรฉmenter n'importe quel nombre d'interfaces




