===== 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:
clio = Voiture()
peugeot407 = Voiture()
===== 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 =====
Utilisation 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