Java
´ ´ Frederic Lang
` Magistere d’Informatique
´ ´ Ecole normale superieure de Lyon
` Deuxieme semestre 1998/1999
ˆ ` ´ Controles d’acces : paquetages et modificateurs de visibilite
´ ´ Paquetage : Ensemble de classes regroupees selon leurs fonctionnalites. Exemples : java.lang, java.util, sont des paquetage de l’API (Application ´ Programming Interface) de JAVA. L’utilisateur definit ses propres paquetages. ´ ´ Modificateur de visibilite : mot cle (public,
private, protected) qui
ˆ ` ` ´ permet de controler l’acces a une classe, une variable, ou une methode, en fonction du paquetage d’appartenance de la classe utilisatrice.
1
Le modificateur public
´ Le modificateur public a le sens suivant, selon l’entite auquel il s’applique : – Une classe ou une interface public est visible partout (i.e. de n’importe quelle autre classe ou interface, de n’importe quel autre paquetage). Une classe ou une interface non public n’est accessible que dans le paquetage auquel elle apppartient. ´ – Un message (methode ou variable) public est visible partout ou sa classe est ` visible.
2
Les modificateurs protected et private
Les modificateurs protected et private s’appliquent aux messages. – Un message protected n’est visible que dans les classes se trouvant dans le ˆ meme paquetage, et dans les sous-classes de sa classe. ´ – Un message private n’est visible que depuis la definition de sa classe. (Invisible dans les sous-classes.)
3
Autres modificateurs
´ ` Deja vus : abstract,
static, public, protected, et
private.
Aussi : ´ final : Une classe final ne peut pas avoir de sous-classe. Une methode ˆ ´ final ne peut pas etre redefinie. Une variable final a une valeur qui ne peut ˆ ´ ´ pas etre modifiee. Remarque : on definit les constantes comme static final. ´ ´ – native : la methode est implantee dans un autre langage. ´ – synchronized : specifique aux threads. – Voir aussi transient, volatile. –
4
L’API de Java
´ API :