Interface dans Java avec exemple
โก Rรฉsumรฉ intelligent
Interface dans Java est un abdostractype t qui spรฉcifie le comportement qu'une classe doit implรฉmenter, contenant des constantes et des valeurs absoluestracCette ressource explique ce qu'est une interface, pourquoi elle est nรฉcessaire, comment la dรฉclarer et l'implรฉmenter, et en quoi les interfaces diffรจrent des classes et des mรฉthodes abscisses.tracclasses t.

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รฉ ยซ implements ยป aprรจs le nom de votre classe, suivi du nom de l'interface.
interface { // methods }
Exemple d'implรฉmentation de l'interface
Maintenant, examinons les interfaces dans Java avec un exemple :
class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle
Cliquez ร nouveau ici si la vidรฉo n'est pas accessible.
Cliquez ร nouveau ici si la vidรฉo n'est pas accessible
Pourquoi une interface est-elle requise ?
Pour comprendre l'utilisation d'une interface dans Java Mieux encore, examinons un Java Exemple d'interface. La classe ยซ Media Player ยป possรจde deux sous-classes : lecteur CD et lecteur DVD. Chacune dispose de sa propre mรฉthode d'implรฉmentation d'interface pour la lecture de musique.
Une autre classe, ยซ lecteur combo ยป, hรฉrite ร la fois des classes CD et DVD (voir image ci-dessous). Quelle mรฉthode de lecture doit-elle hรฉriter ? Cela peut engendrer de sรฉrieux problรจmes de conception, et par consรฉquent, Java ne permet pas plusieurs hรฉritage.
Prenons maintenant un autre exemple : celui d'un chien.
Supposons que vous ayez une exigence selon laquelle la classe ยซ chien ยป hรฉrite des classes ยซ animal ยป et ยซ animal de compagnie ยป (voir image ci-dessous). Mais vous ne pouvez pas รฉtendre deux classes dans JavaAlors, que feriez-vous ? La solution est une interface.
Le rรจglement relatif ร une interface stipule :
- A Java L'interface est 100% ABStracclasse t et n'a que Abdostracmรฉthodes t.
- Une classe peut implรฉmenter un nombre quelconque d'interfaces.
La classe Dog peut รฉtendre la classe ยซ Animal ยป et implรฉmenter l'interface ยซ Pet ยป.
Java Exemple d'interface
Comprenons le programme d'interface ci-dessous. 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 le rรฉsultat de l'interface dans le Java programme.
Diffรฉrence entre classe et interface
| Classe | Interface |
|---|---|
| Dans une classe, vous pouvez instancier des variables et crรฉer un objet. | Dans une interface, il est impossible d'instancier des variables ou de crรฉer un objet. |
| Une classe peut contenir des mรฉthodes concrรจtes (avec implรฉmentation). | Une 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 : private, protected et public. | Dans une 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.
- Utilisez une interface lorsqu'un rรดle doit รชtre dรฉfini pour d'autres classes, indรฉpendamment de 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 est nรฉcessaire que la classe implรฉmente toutes les mรฉthodes dรฉclarรฉes dans les interfaces.
- Une classe devrait remplacer toutes les valeurs absolues.tracles mรฉthodes dรฉclarรฉes dans l'interface.
- L'interface permet d'envoyer un message ร un objet sans se soucier de la classe ร laquelle il appartient.
- Une 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.
- Il est impossible d'instancier une interface.
- Une rรฉfรฉrence d'interface peut pointer vers des objets de ses classes d'implรฉmentation.
- Une interface peut hรฉriter d'une ou plusieurs interfaces. Une classe ne peut hรฉriter que d'une seule classe, mais implรฉmenter un nombre quelconque d'interfaces.
- Une interface ne peut pas implรฉmenter une autre interface. Elle doit รฉtendre une autre interface si nรฉcessaire.
- Une interface dรฉclarรฉe ร l'intรฉrieur d'une autre interface est appelรฉe interface imbriquรฉe.
- Lors de sa dรฉclaration, une variable d'interface doit รชtre initialisรฉe. Dans le cas contraire, le compilateur gรฉnรฉrera une erreur.
- Une classe ne peut pas implรฉmenter deux interfaces. Java qui possรจdent des mรฉthodes portant le mรชme nom mais un type de retour diffรฉrent.




