Le différence clé Entre le package et l'interface en java est que Le package aide à catégoriser méthodiquement les classes pour les accéder et les maintenir facilement tandis que l'interface aide à mettre en œuvre plusieurs héritages et à atteindre l'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 les logiciels. 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 qui sont un package et une interface.
1. Aperçu et différence clé
2. Qu'est-ce que le package en java
3. Qu'est-ce que l'interface dans 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'accès. Cela peut affecter la gestion du programme. Java utilise des packages pour organiser des classes. C'est similaire à un dossier. Java API regroupe les classes dans différents packages en fonction de la fonctionnalité. Par conséquent, chaque package contient un ensemble de classes connexes.
Peu d'exemples de packages sont les suivants. Le java.Le package IO contient l'entrée, les cours de support de sortie. Il comprend un fichier, une empreinte, une tampon-point de forme, etc. Le java.Le package net contient les cours liés au réseautage. Certains exemples sont URL, prise, serversocket. Le java.Le package AWT contient toutes les classes requises pour créer des interfaces utilisateur graphiques. Ce sont quelques packages API Java.
Lorsque le programmeur veut utiliser une certaine classe dans le programme, il devrait importer ce package. Si le programmeur veut utiliser la classe BufferInputStream dans le Java.Package IO, il devrait rédiger l'instruction IMPORT comme suit.
Importer Java.user.BufferinoutStream;
L'instruction ci-dessous importera toutes les classes du package util.
Importer Java.user.*
Il est également possible de créer des packages définis par l'utilisateur.
Employé de forfait;
Employé de classe publique
Selon l'exemple ci-dessus, l'employé est le nom du package. La classe des employés fait partie du forfait des employés. Ce fichier enregistre en tant qu'employé.Java au forfait des employés.
De plus, il est possible d'importer une classe publique d'un package à un autre. Référer l'exemple suivant.
Figure 01: classe A
Figure 02: classe B
La classe A est dans le package 1, et il contient la méthode publique appelée affichage. La classe B est dans le package 2, et il contient la méthode principale. Même s'ils sont dans des packages séparés; La classe B peut créer un objet de classe A en importation de package1. Après l'importation du package 1, la classe B a accès aux données et aux méthodes de la classe A.
Dans l'ensemble, le package en Java aide à organiser les fichiers du projet. Ceci est très utile lors du développement d'un grand système car il permet de stocker tous les fichiers de manière méthodique. En plus de cela, les packages 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 ces situations, le programmeur ne peut que déclarer la méthode. Une méthode abstraite est une méthode qui n'a pas de définition. Il n'a que la déclaration. Lorsqu'il y a 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 prolonge 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 A abstraite a une méthode abstraite appelée affichage. La classe B étend la classe A. Alors la classe B devrait définir l'affichage de la méthode.
Supposons que A et B sont des classes abstraites. Si la classe C é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 l'implémenter, le programmeur doit utiliser les interfaces. Si A et B sont des interfaces, alors la classe C peut les implémenter. Référer l'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 d'affichage2.
Figure 05: classe C
La classe C implémente les interfaces A et B. Par conséquent, il devrait définir les deux méthodes.
Figure 06: Méthode principale
Maintenant dans la méthode principale, il est possible de créer un objet de C et d'appeler les deux méthodes. De même, les interfaces aident à mettre en œuvre un héritage multiple en Java.
Autre que l'héritage multiple, les interfaces aident à atteindre l'abstraction. C'est un concept majeur de OOP. L'abstraction permet de masquer les détails de l'implémentation et d'afficher uniquement la fonctionnalité à l'utilisateur. De plus, il permet de se concentrer sur ce que fait l'objet au lieu de la façon dont il est fait. Comme une interface se compose de méthodes abstraites, elle aide à archiver l'abstraction.
Le package est un groupe de classes connexes qui offrent une protection d'accès et une gestion des espaces de noms. L'interface est un type de référence similaire à la classe qui est une collection de méthodes abstraites. Le package aide à classer méthodiquement les classes pour les accéder et les maintenir facilement. D'un autre côté, l'interface aide à mettre en œuvre plusieurs héritages et à atteindre l'abstraction. Ceci est la principale différence entre le package et l'interface dans Java. De plus, la façon d'écrire un package est dans des lettres minuscules telles que Java.util, java.awt. Si le nom de l'interface est une zone, alors il est écrit, zone d'interface.
La différence entre le package et l'interface dans Java est que le package aide à classer les classes méthodiquement pour les accéder et les maintenir facilement tandis que l'interface aide à mettre en œuvre plusieurs héritages et à atteindre l'abstraction.
1.Point de tutoriels. «Packages Java.»Point de tutoriels, 24 mars. 2018. Disponible ici
2.Point de tutoriels. «Interfaces Java.»Point de tutoriels, 24 mars. 2018. Disponible ici