Atributs et méthodes de classe
217
• cette initialisation se ferait à chaque instanciation d’objet ;
• par nature même, un attribut de classe doit posséder une valeur, même si aucun objet de la
classe n’a encore été instancié.
5.1.2 Exemple
Voici un exemple complet de programme utilisant une classe nommée Cl comportant un
attribut de classe privé nb, destiné à contenir, à tout instant, le nombre d’objets de type Cl
déjà créés. Sa valeur, initialisée à 0, dans sa déclaration, est incrémentée de 1 à chaque appel
du constructeur. Nous nous contentons d’afficher sa valeur à chaque création d’un nouvel
objet.
Cl a, b, c
écrire «En A»
a := Création Cl
écrire «En B»
b := Création Cl
c := Création Cl
écrire «En C»
classe Cl
{ méthode Cl
{ écrire «++ création objet de type Cl»
nb := nb + 1
écrire «il y en a maintenant », nb
}
entier deClasse nb := 0
// initialisation de l’attribut de classe nb
}
En A
++ création objet de type Cl
il y en a maintenant 1
En B
++ création objet de type Cl
il y en a maintenant 2
++ création objet de type Cl
il y en a maintenant 3
En C
Utilisation d’un attribut de classe pour comptabiliser le nombre d’instances d’une classe
5.2 Méthodes de classe
5.2.1 Généralités
Nous venons de voir comment définir des attributs de classe, lesquels n’existent qu’en un
seul exemplaire, indépendamment de tout objet de la classe. De manière analogue, on peut
imaginer que certaines méthodes d’une classe aient un rôle indépendant d’un quelconque
217
• cette initialisation se ferait à chaque instanciation d’objet ;
• par nature même, un attribut de classe doit posséder une valeur, même si aucun objet de la
classe n’a encore été instancié.
5.1.2 Exemple
Voici un exemple complet de programme utilisant une classe nommée Cl comportant un
attribut de classe privé nb, destiné à contenir, à tout instant, le nombre d’objets de type Cl
déjà créés. Sa valeur, initialisée à 0, dans sa déclaration, est incrémentée de 1 à chaque appel
du constructeur. Nous nous contentons d’afficher sa valeur à chaque création d’un nouvel
objet.
Cl a, b, c
écrire «En A»
a := Création Cl
écrire «En B»
b := Création Cl
c := Création Cl
écrire «En C»
classe Cl
{ méthode Cl
{ écrire «++ création objet de type Cl»
nb := nb + 1
écrire «il y en a maintenant », nb
}
entier deClasse nb := 0
// initialisation de l’attribut de classe nb
}
En A
++ création objet de type Cl
il y en a maintenant 1
En B
++ création objet de type Cl
il y en a maintenant 2
++ création objet de type Cl
il y en a maintenant 3
En C
Utilisation d’un attribut de classe pour comptabiliser le nombre d’instances d’une classe
5.2 Méthodes de classe
5.2.1 Généralités
Nous venons de voir comment définir des attributs de classe, lesquels n’existent qu’en un
seul exemplaire, indépendamment de tout objet de la classe. De manière analogue, on peut
imaginer que certaines méthodes d’une classe aient un rôle indépendant d’un quelconque
