le différence clé entre Package et Interface en Java est que Package permet de classer les classes de manière méthodique afin de pouvoir y accéder et de les gérer facilement, tandis qu'Interface permet d'implémenter plusieurs héritages et d'obtenir une abstraction..
Java est l'un des langages de programmation les plus populaires. Le principal avantage de Java est qu’il prend en charge la programmation orientée objet. Cette méthodologie permet de modéliser les objets du monde réel dans un logiciel. Une classe est un plan pour créer un objet. Chaque objet contient des données ou des champs pour décrire les attributs ou les propriétés et méthodes pour décrire les comportements. Cet article traite de deux concepts liés à la POO en Java en Java, à savoir Package et Interface..
1. Vue d'ensemble et différence clé
2. Qu'est-ce que Package en Java
3. Qu'est-ce que l'interface en Java?
4. Comparaison côte à côte - Package vs Interface en Java sous forme tabulaire
5. Résumé
Java fournit un grand nombre de classes. Garder toutes les classes dans un seul dossier peut être difficile, car il est difficile d'y accéder. Cela peut affecter la facilité de gestion du programme. Java utilise des packages pour organiser les classes. C'est similaire à un dossier. L'API Java regroupe les classes dans différents packages en fonction de la fonctionnalité. Par conséquent, chaque paquet contient un ensemble lié de classes.
Quelques exemples de packages sont les suivants. Le package java.io contient les classes de prise en charge d'entrée et de sortie. Il inclut File, PrintStream, BufferInputStream, etc. Le package java.net contient les classes liées à la mise en réseau. Quelques exemples sont URL, Socket, ServerSocket. Le package java.awt contient toutes les classes nécessaires à la création d'interfaces utilisateur graphiques. Ce sont quelques packages d'API Java.
Lorsque le programmeur souhaite utiliser une classe donnée dans le programme, il doit importer ce package. Si le programmeur souhaite utiliser la classe BufferInputStream dans le package java.io, il doit écrire la déclaration d'importation comme suit:.
importer java.util.BufferInoutStream;
L'instruction ci-dessous importera toutes les classes du paquet util.
importer java.util. *;
Il est également possible de créer des packages définis par l'utilisateur.
employé de colis;
Classe publique Employee
Selon l'exemple ci-dessus, l'employé est le nom du package. La classe Employee fait partie du package employee. Ce fichier est enregistré sous Employee.java dans le package employé..
De plus, il est possible d'importer une classe publique d'un paquet à un autre. Référez-vous à l'exemple suivant.
Figure 01: Classe A
Figure 02: Classe B
La classe A est dans le package 1 et contient la méthode publique appelée display. La classe B est dans le package 2 et contient la méthode principale. Même s'ils sont dans des paquets séparés; La classe B peut créer un objet de la classe A en important package1. Après l’importation du package 1, la classe B a accès aux données et méthodes de la classe A.
Globalement, Package en Java aide à organiser les fichiers de projet. Ceci est très utile lors du développement de gros systèmes car il permet de stocker tous les fichiers de manière méthodique. De plus, les packages de l'API Java permettent aux programmeurs d'utiliser des classes déjà existantes..
Parfois, le programmeur peut ne pas connaître la définition de la méthode. Dans ce cas, le programmeur peut uniquement déclarer la méthode. Une méthode abstraite est une méthode qui n'a pas de définition. Il a seulement la déclaration. Lorsqu'il existe au moins une méthode abstraite, cette classe devient une classe abstraite. De plus, la classe abstraite peut contenir des méthodes abstraites ainsi que des méthodes non abstraites. Le programmeur ne peut pas créer d'objets à partir de classes abstraites.
Lorsqu'une classe étend une classe abstraite, la nouvelle classe doit définir toute la méthode abstraite de la classe abstraite. En d'autres termes, supposons que la classe abstraite A possède une méthode abstraite appelée display. La classe B étend la classe A. La classe B devrait alors définir la méthode d'affichage..
Supposons que A et B sont des classes abstraites. Si la classe C s'étend A et B, cette classe C doit définir les méthodes abstraites des deux classes. C'est un héritage multiple. Java ne prend pas en charge l'héritage multiple. Pour le mettre en œuvre, le programmeur doit utiliser des interfaces. Si A et B sont des interfaces, la classe C peut les implémenter. Se référer exemple suivant.
Figure 03: Interface A
Figure 04: Interface B
L'interface A a la méthode abstraite display1 et l'interface B a la méthode abstraite display2.
Figure 05: Classe C
La classe C implémente les interfaces A et B. Par conséquent, il convient de définir les deux méthodes.
Figure 06: Méthode principale
Dans la méthode principale, il est maintenant possible de créer un objet de C et d’appeler les deux méthodes. De même, les interfaces aident à implémenter l'héritage multiple en Java.
Hormis l'héritage multiple, les interfaces permettent d'abstraction. C'est un concept majeur en POO. L'abstraction permet de masquer les détails de la mise en œuvre et d'afficher uniquement les fonctionnalités à l'utilisateur. De plus, cela permet de se concentrer sur ce que fait l'objet au lieu de savoir comment il est fait. En tant qu’interface composée de méthodes abstraites, il est utile d’archiver les abstractions.
Le package est un groupe de classes liées qui fournissent une protection d'accès et une gestion des espaces de noms. Interface est un type de référence similaire à class qui est un ensemble de méthodes abstraites. Package permet de classer méthodiquement les classes pour y accéder et les gérer facilement. D'autre part, Interface aide à implémenter plusieurs héritages et à réaliser une abstraction. C'est la principale différence entre Package et Interface en Java. De plus, la façon d'écrire un paquet est en lettres minuscules telles que java.util, java.awt. Si le nom de l'interface est Area, alors il est écrit, zone d'interface.
La différence entre Package et Interface en Java réside dans le fait que Package permet de catégoriser les classes de manière méthodique afin de pouvoir y accéder et de les gérer facilement, tandis qu'Interface permet d'implémenter plusieurs héritages et de réaliser une abstraction..
1.Tutoriels Point. "Paquets Java." Tutoriels Point, 24 mars 2018. Disponible ici
2.Tutoriels Point. "Interfaces Java." Tutoriels Point, 24 mars 2018. Disponible ici