Outils pour utilisateurs

Outils du site


les_programmes_a_connaitre:structure_de_donnees_term:definition

Ceci est une ancienne révision du document !


Definir une classe

Qu'est ce qu'une classe?

Une classe est une sorte de moule, on pourrait par exemple imaginer une class voiture avec comme attributs :

  • La marque
  • La couleur
  • L'année
  • Le kilométrage

Et comme fonctions, on pourrait imaginer :

  • Avancer
  • Changer de vitesse
  • S'arrêter

Création d'une classe

La création d'une classe va commencer par le mot class.

class Voiture:
#instructions, paramètres, etc...

Pour créer une nouvelle instance de la classe, cela est simple :

clio = Voiture()
peugeot407 = Voiture()

Dans le code ci-dessus, nous créons deux instances de la classe Voiture(), en modifier une ne modifieras pas l'autre.

Les attributs

Penchons nous sur les attributs :

class Voiture:
    pass
 
clio = Voiture()
clio.couleur = "Noir"
peugeot407 = Voiture()
peugeot407.couleur = "Blanc"

Nous venons de créer un attribut “couleur” pour les deux instances de la classe. Cependant, cela n'est pas une bonne pratique. Il existe un moyen plus propre et efficace pour définir des attributs.

Les méthodes

Pour cela, nous allons nous servir d'une méthode (une fonctions définie dans une classe)

class Voiture:
    def __init__ (self):
        self.couleur = "Noir"

La méthode __init__ est automatiquement exécutée lors de la création d'une instance. Le mot self est obligatoirement le premier argument d'une méthode, ce mot self représente l'instance.
Lors de la création d'une nouvelle instance, la couleur sera automatiquement noir.

Pour faire en sorte de pouvoir définir la couleur de chaque voiture, nous allons modifier cette classe :

class Voiture:
    def __init__ (self, couleurVoiture):
        self.couleur = couleurVoiture
clio = Voiture("Noir")
peugeot407 = Voiture("Blanc")

Au moment de la création de l'instance, on passe comme argument la couleur de la voiture. La méthode __init__ va ensuite attribuer l'argument couleurVoiture à la variable couleur.

Nous pouvons ensuite ajouter d'autres méthodes :

class Voiture:
    def __init__ (self, couleurVoiture, nbrKM):
        self.couleur = couleurVoiture
        self.kilometres = nbrKM
 
    def ajouterKM(self):
        self.kilometres = self.kilometres + 1
 
    def donneKM(self):
        return self.kilometres
    def donneCouleur(self):
        return self.couleur
 
clio = Voiture("Blanc", 100)
clio.donneKM() #renvoie 100
clio.ajouterKM() #ajoute 1
clio.donnerKM() #renvoie 101
les_programmes_a_connaitre/structure_de_donnees_term/definition.1611050554.txt.gz · Dernière modification: 2021/01/19 11:02 de bl