Interfaces Java avec ses propriétés, son implémentation et son exemple
En Java, les interfaces de programmation sont juste une classe similaire qui contient des méthodes avec une implémentation vide et des variables constantes. Toutes ces méthodes sont « publiques et abstraites » par défaut. Étant donné que les interfaces sont de nature abstraite, elles ne peuvent pas être directement instanciées. Par conséquent, nous devons utiliser le mot-clé implement pour définir l'interface.
L'interférence est similaire aux classes abstraites, mais la principale différence entre celles-ci est que l'interface a toutes les méthodes abstraites, mais dans le cas des classes abstraites, elle doit avoir au moins une méthode abstraite.
Propriétés de l'interface
- Il contient toujours les membres de données finaux.
- Il ne peut pas être instancié.
- Toutes les méthodes d'interface sont de nature abstraite et publique.
- La classe qui implémente l'interface doit fournir des fonctionnalités pour les méthodes déclarées dans l'interface.
- On peut utiliser l'interface pour implémenter PM (Partial multiple heritage) et DMD (Dynamic memory dispatch).
- L'interface s'implémente toujours dans la classe dérivée.
Déclaration d'interface
import java.util.*; interface interfacename { //define abstract methods //define constants }
Exemple de définition d'héritage :
Méthode correcte - 1
interface interfaceone { } interface interfacetwo extends interfaceone { }
Méthode correcte - 2
interface interfaceone { } class classone { } class clastwo extends classone implements interfaceone { }
Méthode incorrecte - 1
interface interfaceone { } interface interfacetwo implements interfaceone { }
Méthode incorrecte - 2
interface interfaceone { } class classone { } class clastwo implements interfaceone extends classone { }Publicité
Considérez le programme :
import java.util.*; interface student { void get(); void put(); } class admin implements student { Scanner sc=new Scanner(System.in); private int rollno; private String name; public void get() { System.out.print("Enter name of student : "); name=sc.nextLine(); System.out.print("Enter roll number of student : "); rollno=sc.nextInt(); } public void put() { System.out.println("Name of student is "+name); System.out.println("Roll number of Student is "+rollno); } } class ExInterfaces { public static void main(String arg[]) { admin S=new admin(); S.get(); S.put(); } }
Sortie
First Run: Enter name of student : Ankit Yadav Enter roll number of student : 1004 Name of student is Ankit Yadav Roll number of Student is 1004 Second Run: Enter name of student : Abhishek Kataria Enter roll number of student : 1003 Name of student is Abhishek Kataria Roll number of Student is 1003