Chapitre d’ouvrage

Chapitre 9. Constructeurs et initialiseurs

Pages 175 à 207

Citer ce chapitre


  • Gomez, R.
(2022). Chapitre 9. Constructeurs et initialiseurs. Le petit Python orienté objet : Programmation orientée objet avec Python 3 (p. 175-207). Ellipses. https://stm.cairn.info/le-petit-python-oriente-objet--9782340064065-page-175?lang=fr.

  • Gomez, Richard.
« Chapitre 9. Constructeurs et initialiseurs ». Le petit Python orienté objet Programmation orientée objet avec Python 3, Ellipses, 2022. p.175-207. CAIRN.INFO, stm.cairn.info/le-petit-python-oriente-objet--9782340064065-page-175?lang=fr.

  • GOMEZ, Richard,
2022. Chapitre 9. Constructeurs et initialiseurs. In : Le petit Python orienté objet Programmation orientée objet avec Python 3. Paris : Ellipses. Références sciences, p.175-207. URL : https://stm.cairn.info/le-petit-python-oriente-objet--9782340064065-page-175?lang=fr.

Quand on dit que b est une instance de A, cela ne signifie pas forcément que le type de b est A. Cela signifie que type(b) est A ou un ancêtre de A.
Cette terminologie est naturelle. En effet, reprenons l’exemple des classes Rectangle et Carré rencontrées au chapitre 1 et faisons un peu de géométrie. On se souvient que Carré est fille de Rectangle. Soit ABCD un carré du plan géométrique. Du point de vue de la géométrie, ABCD est aussi un rectangle. Il est donc naturel de considérer que si x est une instance de Carré, alors x est aussi une instance de Rectangle. N’oublions pas que la notion « x est une instance de Carré » modélise l’idée selon laquelle « x est un carré ».
Soit A une classe. Lorsqu’on instancie A :
Python déclenche le mécanisme suivant :
appel A._ _new_ _(A,x,y,z). Cet appel retourne un objet <instance > ;
si <instance > est une instance de A, appel <instance >._ _init_ _(x,y,z) ;le nom a pointe vers <instance >.
On notera que Python n’appelle pas la méthode init si l’objet retourné par la méthode new à l’étape 1 n’est pas une instance de A. Ceci étant dit, dans les cas courants, l’objet retourné par new est une instance de A, et init est appelée. On peut même dire que dans les cas courants, l’objet retourné par new est carrément de type A, ce qui fait que dans la plupart des cas, l’appel de A retourne un objet de type A.
Analysons le mécanisme d’instanciation dans le cas le plus simple, celui d’une classe « vide » …


Date de mise en ligne : 23/02/2023

Ce chapitre est en accès conditionnel

Acheter cet ouvrage

35,99 €

828 pages, format électronique (HTML et feuilletage, par chapitre)

Acheter ce chapitre

5,00 €

33 pages format électronique (HTML et feuilletage)
Membre d'une institution cliente ?