Propriétés des objets et des méthodes
CHAPITRE 10
222
peut aussi être écrit ainsi :
méthode Point(entier abs, entier ord) // notez les noms des paramètres muets ici
{ courant.abs := abs
// ici abs désigne le premier paramètre de Point
// l’attribut abs de l’objet courant est masqué ; mais
// on peut le nommer courant.abs
courant.ord := ord
}
Cette démarche permet d’employer des noms de paramètres identiques à des noms d’attributs, ce qui évite parfois d’avoir à créer de nouveaux identificateurs, comme x et y ici.
8 Classes standards et classe Chaîne
Nous avons indiqué que les langages procéduraux disposent de « bibliothèques de
fonctions ». De façon comparable, les langages objet disposent de « bibliothèques de
classes ». Parmi les plus répandues, on trouve des classes permettant de manipuler des
« structures de données élaborées » (vecteurs dynamiques, listes chaînées, piles, files
d’attente, queues...), des dates, des heures et surtout des chaînes de caractères.
Une classe de type chaîne permet de manipuler des suites de caractères, en nombre quelconque, d’une manière beaucoup plus souple que ne le permettrait un tableau. Chaque langage
propose ses propres fonctionnalités d’un tel type, avec beaucoup de disparités. C’est la raison
pour laquelle nous ne l’avons pas introduit dans notre pseudo-langage.
À simple titre indicatif, nous pouvons dire que ce type se nomme souvent String. Généralement, les libellés apparaissent comme des constantes de ce type, de sorte qu’ils peuvent être
utilisés directement dans une affectation, par exemple :
String ch
ch := «bonjour»
En revanche, suivant les langages, l’accès à un caractère de rang donné de la chaîne pourra se
faire :
• comme l’accès à un élément d’un tableau :
écrire ch[i]
// affiche le ième caractère de la chaîne ch
• à l’aide d’une méthode particulière de la classe String, nommée souvent charAt :
écrire ch.charAt(i)
// affiche le ième caractère de la chaîne ch
Dans certains langages, ces chaînes seront modifiables, soit au niveau du caractère, soit au
niveau d’une « sous-chaîne » (suite de caractères de rangs donnés). Dans d’autres langages,
de telles modifications ne seront pas permises.
Dans tous les cas, on disposera de méthodes de recherche dans une chaîne donnée de l’occurrence d’un caractère donné ou d’une sous-chaîne donnée. La concaténation (mise bout à bout
de deux chaînes) sera toujours présente, mais, là encore, elle pourra s’exprimer de manières
différentes (opérateur +, méthode...).
CHAPITRE 10
222
peut aussi être écrit ainsi :
méthode Point(entier abs, entier ord) // notez les noms des paramètres muets ici
{ courant.abs := abs
// ici abs désigne le premier paramètre de Point
// l’attribut abs de l’objet courant est masqué ; mais
// on peut le nommer courant.abs
courant.ord := ord
}
Cette démarche permet d’employer des noms de paramètres identiques à des noms d’attributs, ce qui évite parfois d’avoir à créer de nouveaux identificateurs, comme x et y ici.
8 Classes standards et classe Chaîne
Nous avons indiqué que les langages procéduraux disposent de « bibliothèques de
fonctions ». De façon comparable, les langages objet disposent de « bibliothèques de
classes ». Parmi les plus répandues, on trouve des classes permettant de manipuler des
« structures de données élaborées » (vecteurs dynamiques, listes chaînées, piles, files
d’attente, queues...), des dates, des heures et surtout des chaînes de caractères.
Une classe de type chaîne permet de manipuler des suites de caractères, en nombre quelconque, d’une manière beaucoup plus souple que ne le permettrait un tableau. Chaque langage
propose ses propres fonctionnalités d’un tel type, avec beaucoup de disparités. C’est la raison
pour laquelle nous ne l’avons pas introduit dans notre pseudo-langage.
À simple titre indicatif, nous pouvons dire que ce type se nomme souvent String. Généralement, les libellés apparaissent comme des constantes de ce type, de sorte qu’ils peuvent être
utilisés directement dans une affectation, par exemple :
String ch
ch := «bonjour»
En revanche, suivant les langages, l’accès à un caractère de rang donné de la chaîne pourra se
faire :
• comme l’accès à un élément d’un tableau :
écrire ch[i]
// affiche le ième caractère de la chaîne ch
• à l’aide d’une méthode particulière de la classe String, nommée souvent charAt :
écrire ch.charAt(i)
// affiche le ième caractère de la chaîne ch
Dans certains langages, ces chaînes seront modifiables, soit au niveau du caractère, soit au
niveau d’une « sous-chaîne » (suite de caractères de rangs donnés). Dans d’autres langages,
de telles modifications ne seront pas permises.
Dans tous les cas, on disposera de méthodes de recherche dans une chaîne donnée de l’occurrence d’un caractère donné ou d’une sous-chaîne donnée. La concaténation (mise bout à bout
de deux chaînes) sera toujours présente, mais, là encore, elle pourra s’exprimer de manières
différentes (opérateur +, méthode...).
