Interfaces en Java | Expliqué

Interfaces en Java | Expliqué
En Java, une interface n'est rien d'autre qu'un plan d'une classe et il peut avoir des méthodes statiques, constantes et abstraites. Il est très similaire à la classe car les variables et les méthodes peuvent également être créées dans les interfaces. Cependant, la principale différence est qu'une interface ne peut avoir que des champs / variables constants, des méthodes abstraites et nous ne pouvons pas créer l'objet d'une interface. Dans Java, une classe abstraite peut avoir une ou plusieurs méthodes abstraites dans une interface, par défaut, toutes les méthodes seront abstraites.

Cet article fournira une compréhension détaillée des concepts suivants concernant les interfaces Java:

  • Qu'est-ce qu'une interface dans Java
  • Syntaxe de base de l'interface en Java
  • Pourquoi utiliser l'interface
  • Comment implémenter l'interface dans Java
  • Comment implémenter l'interface multiple dans Java

Alors, commençons!

Qu'est-ce que l'interface

Une interface est un modèle d'une classe qui se compose de méthodes abstraites et de champs constants. L'abstraction de données peut être obtenue au moyen d'interfaces Java. Les interfaces Java ne contiennent que la signature (déclaration) des méthodes et seront définies dans la classe implémentée.

Syntaxe

La syntaxe de base d'une interface comprend un mot-clé «interface» suivi du nom de l'interface:

interface interfacename
// Champs constants / Déclaration variable
// Déclaration de méthodes abstraites

L'interface Java peut être implémentée dans une classe avec l'aide du "met en oeuvre" mot-clé:

class className implémente interfacename
// définir les méthodes d'interface ici

Pourquoi l'interface

Les fonctionnalités ci-dessous fournissent les principales raisons d'utiliser une interface en Java:

  • L'abstraction peut être obtenue en utilisant l'interface.
  • L'origine multiple peut être effectuée au moyen d'interfaces.
  • Le couplage lâche (indépendance de classe) peut être réalisé en utilisant l'interface.

Comment implémenter l'interface dans Java

La meilleure façon de comprendre un concept est de l'expérimenter, alors considérons quelques exemples qui expliquent comment implémenter une interface en Java.

Exemple

Dans cet exemple, nous créons une interface nommée "Personne" et une classe nommée «Interfacexamples». Le «Interfacexamples» La classe implémente l'interface "Personne":

Personne.Java

Personne d'interface
int person_age = 32;
String Person_name = "John";
public void displayInfo ();

L'extrait de code ci-dessus crée une interface, et dans le corps de l'interface, deux champs constants et une fonction nommée "DisplayInfo ()" sont déclarés:

Dans l'extrait ci-dessus, nous avons suivi la convention de dénomination constante (i.e. Majuscules) cependant, si nous n'avons pas suivi la convention de dénomination, ces champs seront considérés comme des champs constants dans un interface.

Interfaceexamples.Java

classe publique Interfaceexamples implémente la personne
public void displayInfo ()
Système.dehors.println ("nom de la personne:" + personne_name);
Système.dehors.println ("Person Age:" + Person_age);

public static void main (String [] args)
Interfacexamples exp = new interfaceExamples ();
Exp.DisplayInfo ();

L'extrait ci-dessus montre que le Interfaceexamples La classe implémente le Personne Interface:

Dans le Interfaceexamples classe nous définissons le DisplayInfo () méthode, et après, dans le principal Méthode Nous avons créé un objet de la classe Interfaceexamples et appelle enfin le DisplayInfo () Méthode à l'aide de l'objet de classe:

La sortie vérifie que le Personne L'interface est implémentée avec succès dans le Interfaceexamples classe.

Comment implémenter plusieurs interfaces en Java

Java ne prend pas en charge le concept d'héritage multiple pour éviter l'ambiguïté, ce qui signifie en Java, une classe ne peut pas hériter des propriétés de plusieurs superclasses. Cependant, une classe peut implémenter plusieurs interfaces, en conséquence, un héritage multiple peut être réalisé au moyen d'interfaces.

Exemple

Dans l'extrait ci-dessous, une classe implémentera les multiples interfaces:

Personne.Java

Personne d'interface
int person_age = 32;
String Person_name = "John";
public void Personinfo ();

L'interface de personne déclare deux constantes et une méthode Personinfo ().

Employé.Java

Interface Employee
public void EmployeeInfo (nom de chaîne);

L'interface des employés déclare une méthode EmployeeInfo () qui prend un paramètre.

Interfaceexamples.Java

classe publique Interfaceexamples implémente la personne, l'employé
public void personinfo ()
Système.dehors.println ("nom de la personne:" + personne_name);
Système.dehors.println ("Person Age:" + Person_age);

public void EmployeeInfo (nom de chaîne)
Système.dehors.println ("nom de l'employé:" + nom);

public static void main (String [] args)
Interfacexamples exp = new interfaceExamples ();
Exp.Personinfo ();
Exp.Employeeinfo ("Michael");

La capture d'écran fournie ci-dessous fournit le code complet avec la sortie:

La sortie vérifie que les deux Personne et Employé Les interfaces sont implémentées avec succès.

Conclusion

Les interfaces Java ont des méthodes abstraites et des champs constants. Par défaut, les variables / champs sont publics, statiques et définitifs tandis que les méthodes / fonctions sont abstraites et publiques. En Java, ni l'objet de l'interface ne peuvent être créés ni le constructeur. Les méthodes / fonctions de l'interface seront définies à l'intérieur de la classe qui implémente l'interface. Une classe peut implémenter plusieurs interfaces et peut donc réaliser les fonctionnalités de l'héritage multiple.

Cette rédaction présente un aperçu détaillé de ce qu'est une interface et comment implémenter l'interface dans une classe en Java.