< Programmation Java

En Java, comme dans beaucoup de langages orientés objet, les classes, les attributs et les méthodes bénéficient de niveaux d'accessibilité, qui indiquent dans quelles circonstances on peut accéder à ces éléments.

Ces niveaux sont au nombre de 4, correspondant à 3 mots-clés utilisés comme modificateurs : private, protected et public. La quatrième possibilité est de ne pas spécifier de modificateur (comportement par défaut).

Comportement par défaut

Si aucun modificateur n'est indiqué, l'élément n'est accessible que depuis les classes faisant partie du même package.

Exemple :

 package com.moimeme.temps;
 
 class Horloge
 {
     // corps de la classe
 }
 
 public class Calendrier
 {
     void ajouteJour()
     {
         // corps de la methode
     }
 
     int mois;
 
     // suite de la classe
 }

La classe Horloge, la méthode ajouteJour et l'attribut mois ne sont accessibles que depuis les classes faisant partie du package com.moimeme.temps.

Modificateur "private"

Un attribut ou une méthode déclarée "private" n'est accessible que depuis l'intérieur de la même classe.

Modificateur "protected"

Un attribut ou une méthode déclarée "protected" est accessible uniquement aux classes d'un package et à ses sous-classes même si elles sont définies dans un package différent.

Modificateur "public"

Une classe, un attribut ou une méthode déclarée "public" est visible par toutes les classes et les méthodes.

En résumé

Le tableau résume les différents mode d'accès des membres d'une classe.

Modificateur du membre private aucun protected public
Accès depuis la classe Oui Oui Oui Oui
Accès depuis une classe du même package Non Oui Oui Oui
Accès depuis une sous-classe Non Non Oui Oui
Accès depuis toute autre classe Non Non Non Oui
Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.