Initiée dans les années 1960 – 1970 avec les langages Lisp, Simula, SmallTalk, puis intégrée à la plupart des langages.
PROGRAMMATION ORIENTEE OBJET
Chapitre I
Un objet est un ensemble composé d’attributs (valeurs) et de méthodes (fonctions). La structure de classe permet de créer des objets.
1. Donner des exemples de classes et de méthodes.
Création avec l’instruction class Nom_classe:
PROGRAMMATION ORIENTEE OBJET – Classes, introduction
Chapitre I
2. Analyser l’exemple en utilisant le vocabulaire vu précédemment.
Accès attributs/méthodes : instance.attribut ou .methode(…)
PROGRAMMATION ORIENTEE OBJET – Classes et attributs
Chapitre I
3. Expliquer l’exécution des lignes suivantes :
Par convention, un attribut considéré comme inaccessible par l’utilisateur doit commencer par deux __ : __attribut (attribut privé)
PROGRAMMATION ORIENTEE OBJET – Classes et méthodes
Chapitre I
4. Ecrire une méthode d’instance appelée affichage qui renvoie le temps en chaîne de caractère, par exemple : "7h 53m 12s"
Dans le code d’une méthode d’instance, toute référence à un attribut/méthode d’instance doit commencer par self.
Certaines méthodes d’instance sont réservées pour simplifier l’utilisation de la classe. Elles s’appellent __nom__
PROGRAMMATION ORIENTEE OBJET – Méthodes particulières
Chapitre I
PROGRAMMATION ORIENTEE OBJET – Autonomie
Chapitre I
PROGRAMMATION ORIENTEE OBJET – Méthodes particulières
Chapitre I
Il en existe beaucoup d’autres, notamment pour les opérations …
Méthode | Explications |
__del__ | Destructeur. Appelé par l’instruction del instance |
__repr__ | Renvoie une représentation de l’objet dans la console |
__str__ | Semblable à __repr__, mais utilisé pour les print |
__len__ | Taille de l’objet. Appelé par l’instruction len(instance) |
__getitem__ | Appelé par l’instruction instance[x] |
__setitem__ | Appelé par l’instruction instance[x] = … |
__contains__ | Appelé par l’instruction x in instance |
__add__ | Appelé par l’instruction instance_1 + instance_2 |
__eq__ | Appelé par l’instruction instance_1 == instance_2 |
Une méthode de classe est une fonction utilisée dans la classe, mais qui ne dépend pas de l’instance. Donc elle ne comporte pas self comme argument.
La plupart du temps ces fonctions sont privées, autrement dit utilisées par d’autres méthodes, d’instance notamment.
On parle également de méthodes statiques.
PROGRAMMATION ORIENTEE OBJET – Hors programme
Chapitre I
Bien penser au __ pour assurer le côté privé !