Les méthodes : les actions d'un objetChapitre 5/8
Une fonction rangée dans la classe
Une méthode est une fonction écrite dans une classe. Comme __init__, elle reçoit toujours self en premier paramètre : l'objet sur lequel on travaille. On l'appelle avec le point, comme notes.append(12).
class Personne:
def __init__(self, nom):
self.nom = nom
def saluer(self):
print("Bonjour, je suis", self.nom)
alice = Personne("Alice")
bob = Personne("Bob")
alice.saluer() # Bonjour, je suis Alice
bob.saluer() # Bonjour, je suis BobLa méthode saluer est écrite une seule fois, dans le plan. Mais chaque objet l'utilise avec ses propres attributs : self.nom vaut "Alice" quand c'est Alice qui salue, "Bob" quand c'est Bob.
class NomDeLaClasse:
def nom_methode(self, param1, param2):
instructions qui utilisent self.attribut
objet.nom_methode(valeur1, valeur2)DéfinitionUne méthode
Programme complet du cours de programmation orientée objet (8 chapitres, gratuit)
- 1. Pourquoi des objets ? : Le problème qu'on cherche à résoudre : des données éparpillées dans des variables et des dictionnaires, et l'idée de regrouper l'état et les actions dans un seul objet.
- 2. Classe et objet : Le plan et ce qu'on fabrique avec : écrire une classe avec class, instancier des objets, et découvrir que int, str et list sont des classes.
- 3. Les attributs : l'état d'un objet : Donner des données à un objet avec le point, les lire, les modifier, et comprendre ce qui se passe quand deux variables désignent le même objet.
- 4. Le constructeur : __init__ et self : Remplir un objet dès sa fabrication : la méthode __init__, le paramètre self, les arguments donnés à la classe et les attributs à valeur fixe.
- 5. Les méthodes : les actions d'un objet : Écrire les actions d'un objet dans sa classe : méthodes qui affichent, qui modifient l'état, qui renvoient une valeur, et ce que fait vraiment p.saluer().
- 6. Des objets qui travaillent ensemble : Un objet en paramètre d'une méthode, un attribut qui est une liste d'objets (le panier et ses produits), et une première structure : la pile.
- 7. L'encapsulation : protéger l'état : Empêcher qu'on mette un solde à -1000 : vérifications dans les méthodes, attributs privés avec _ et __, accesseurs et mutateurs, interface et implémentation.
- 8. La totale : une bibliothèque de prêt : Un mini-projet guidé qui utilise tout le cours : classes Livre et Bibliotheque, attributs privés, objets qui en contiennent d'autres, et un guichet qui lit au clavier.