M03 · Programmation orientée objet
Lab POO pas à pas
Exécutez un programme orienté objet ligne par ligne et regardez la mémoire : les classes, les objets créés, leurs attributs, et les variables qui pointent vers eux. Un objet qui vient d’être créé est encadré, un attribut qui change s’allume en jaune.
Cliquez sur Pas à pas pour exécuter la première ligne, ou sur Exécuter pour tout dérouler.
Programme Python orienté objet
Variables de la plus récente à la plus ancienne
Les variables apparaîtront ici dès la première étape.
Console
Mémoire classes et objets à cette étape
Les classes et les objets créés apparaîtront ici.
Chaque ligne exécutée s'ajoute ici avec les valeurs obtenues juste après.
Classe et constructeur
class Etudiant:
def __init__(self, nom):
self.nom = nom # attribut
self.notes = []
e = Etudiant("Salma") # instanciationself désigne l’objet en cours de construction : regardez-le dans le cadre Etudiant.__init__().
Méthodes
class Compte:
def deposer(self, m):
self.solde += m
c.deposer(100) # self = cEncapsulation
self._x # protégé (convention) self.__x # privé 🔒 @property def prix(self): ... @prix.setter def prix(self, v): ...
Héritage
class Taxi(Vehicule):
def __init__(self, imm, tarif):
super().__init__(imm)
self.tarif = tarifLe panneau Mémoire indique de quelle classe chaque objet hérite.
Références
v2 = v1 # même objet v1 is v2 # True v3 = Voiture() # nouvel objet
Dans Variables, → Voiture #1 signifie « pointe vers l’objet n°1 ». Cliquez dessus pour le retrouver dans la mémoire.
Abstraction
from abc import ABC, abstractmethod
class Paiement(ABC):
@abstractmethod
def payer(self, m): ...