En  programmation  objet  pure,  il  n’y  a  plus  de  notion  de  programme  principal  et  de  sous­programmes :  tous  les 
traitements  se  font  au  sein  des  méthodes,  et  même  le  bloc  d’instructions  principal  est  une  méthode  au  sein  d’une 
classe, comme en Java. 
Comme  tous  les  composants  d’un  programme  sont  des  objets,  il  s’établit  une  communication  entre  les  objets.  En 
pratique c’est évidemment vous qui initiez cette communication : quand on dit qu’un premier objet demande quelque 
chose à un second, c’est que l’une des méthodes du premier objet appelle l’une des méthodes du second. Puisque tout 
est objet, vous pouvez créer une instance du second objet comme attribut du premier, ou même passer des objets en 
arguments de méthodes. 
Dans l’exemple précédent, l’objet de type Ecran peut recevoir le message modifie_type qui modifie l’attribut type. 
Il est possible de décrire (programmer) une méthode en dehors de la définition de la classe (en algorithmique, mais 
pas  en  Java  par  exemple).  Dans  ce  cas,  dans  la  définition  de  la  classe  vous  écrivez  le  prototype  de  la  méthode 
(nom+paramètres)  et  en  dessous  vous  définissez  la  méthode.  Vous  devez  respecter  la  syntaxe  suivante avec  les 
doubles points "::" entre le nom de la classe et la méthode : 
Procédure classe::methode(params)
Par exemple : 
Classe Ecran 
... 
méthodes 
Procédure modifie_type(E :t :chaîne) 
... 
FinClasse 
 
Procédure Ecran::modifie_type(E :t :chaîne) 
Début 
this.type←t 
FinProc
7. Portée des membres 
Dans le programme obj1 l’accès aux divers membres, attributs ou méthodes, se fait directement. Le programme accède 
aux membres en passant par l’objet et l’opérateur point. C’est que dans la définition de la classe, les membres sont 
bien souvent publics : ils sont accessibles sans aucune protection. 
Vous  pouvez  choisir  de  rendre  les  divers  membres  publics  ou  privés.  Par  défaut  en  Java  par  exemple  si  vous  ne 
précisez rien tous sont publics. En algorithmique les attributs sont par défaut privés et les méthodes publiques. 
q Public : les membres sont directement accessibles depuis toute autre partie du programme ou objet comme 
dans les exemples précédents via l’opérateur point. 
q Privé :  les  membres  ne  sont  plus  accessibles  depuis  l’extérieur  de  l’objet.  Ils  sont  seulement  accessibles 
depuis l’intérieur de l’objet. 
Vous pouvez préciser dans les déclarations le type d’accès à vos membres. Voici un exemple de la classe Ecran où les 
attributs sont privés, donc accessibles uniquement depuis les méthodes de l’objet, et les méthodes publiques : 
Classe Ecran 
attributs privés 
type :chaîne 
marque :chaîne 
modèle :chaîne 
... 
méthodes publiques 
Procédure regler_affichage(...) 
Procédure affiche_modèle() 
Procédure saisie_modèle() 
FinClasse
Avec cette nouvelle définition, vous ne pouvez plus utiliser le programme obj1 tel quel. Vous devez le modifier. 
Programme obj2 
- 7 -
© ENI Editions - All rigths reserved - Jonifar lina
200
Précédent

- 200/220

Suivant