1 of 8

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.

2 of 8

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(…)

3 of 8

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é)

 

4 of 8

 

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.

 

5 of 8

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

 

 

6 of 8

PROGRAMMATION ORIENTEE OBJET – Autonomie

Chapitre I

 

7 of 8

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

8 of 8

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é !