Un package Java est un groupe de classes, et une classe ne peut appartenir qu'à un seul package. Ils peuvent être organisés hiérarchiquement, l'organisation est en fait l'organisation du système de fichiers.
package *[<nomDePackage>.]<nomDuPackage>Si cette déclaration est absente, cela est équivalent à :
package anonymous
Le regroupement des classes en package est utile dès que les applications deviennent importante en nombre de classes. Les critères de regroupement peuvent être fonctionnel, de domaine où d'implantation.
Une classe peut être déclarée publique ou pas. Si elle est publique, elle est utilisable par des classes d'autres packages, sinon, seules les classes du même package peuvent l'utiliser.
Par exemple, la classe :
package MonPackage public class MaClasseest utilisable par toutes les classes de la façon suivante :
import MonPackage.* class Utilisatrice { MaClasse monObjet = new MaClasse(); }Par contre la classe suivante :
package MonPackage class MaClassen'est utilisable que par les classes du package
MonPackage