Retour au blog

8 Exercices sur la Programmation Orientée Objet : Classes et Héritage

Tu veux structurer ton code de manière professionnelle ? Passe à la POO pour créer des programmes modulaires, réutilisables et puissants.

Cet article a été rédigé à des fins pédagogiques. Les informations présentées peuvent évoluer. Nous t’invitons à vérifier auprès de sources officielles.

Niveau : Moyen — Durée estimée : 70 min — 8 exercices avec corrections détaillées

Rappel des notions clés

La Programmation Orientée Objet (POO) consiste à modéliser le monde réel sous forme d'objets. Une classe est le moule (le plan) qui définit les caractéristiques (attributs) et les comportements (méthodes) de ces objets.

L'encapsulation permet de protéger les données d'un objet en les rendant privées, n'autorisant l'accès que via des méthodes spécifiques (getters et setters). L'héritage permet à une classe enfant de récupérer les propriétés d'une classe parent, facilitant la réutilisation du code et la spécialisation.

Concepts clés : Class -> Objet (Instance) | Attributs (Variables) | Méthodes (Fonctions) | Héritage (Spécialisation)

Exercices — Niveau Facile

Exercice 1 : Crée une classe Voiture avec les attributs "marque" et "couleur". Ajoute une méthode "afficher" qui écrit "C'est une [marque] de couleur [couleur]".

Correction :

En Python : class Voiture:   def init(self, marque, couleur):     self.marque = marque     self.couleur = couleur   def afficher(self):     print(f"C'est une {self.marque} de couleur {self.couleur}")

Exercice 2 : Instancie deux objets de la classe Voiture : une Peugeot rouge et une Tesla noire. Appelle la méthode afficher pour les deux.

Correction :

v1 = Voiture("Peugeot", "rouge") v2 = Voiture("Tesla", "noire") v1.afficher() v2.afficher()

Exercices — Niveau Moyen

Exercice 3 : Explique le concept d'encapsulation. Comment rend-on un attribut privé en Python ?

Correction :

L'encapsulation cache les détails internes d'un objet. En Python, on préfixe le nom de l'attribut par deux underscores (ex: self.__prix) pour signaler qu'il est privé et ne doit pas être accédé directement depuis l'extérieur de la classe.

Exercice 4 : Crée une classe CompteBancaire avec un attribut privé "__solde". Ajoute une méthode pour déposer de l'argent et une autre pour afficher le solde.

Correction :

class CompteBancaire:   def init(self):     self.__solde = 0   def deposer(self, montant):     self.__solde += montant   def afficher_solde(self):     return self.__solde

Exercice 5 : Applique l'héritage. Crée une classe Animal avec une méthode "parler". Crée une classe Chien qui hérite de Animal et modifie "parler" pour afficher "Wouf".

Correction :

class Animal:   def parler(self): pass class Chien(Animal):   def parler(self): print("Wouf")

Exercices — Niveau Difficile

Exercice 6 : Qu'est-ce que le polymorphisme en POO ? Donne un exemple concret avec une liste d'animaux différents qui "parlent".

Correction :

Le polymorphisme permet d'utiliser une même interface pour des objets de types différents. Si tu as une liste [Chien(), Chat()], tu peux parcourir la liste et appeler .parler() sur chaque objet. Chaque animal répondra selon sa propre définition de la méthode.

Exercice 7 : Dans une classe enfant, comment appeler le constructeur de la classe parent ?

Correction :

On utilise la fonction super(). Par exemple : super().init(parametre). Cela permet d'initialiser les attributs définis dans la classe parente avant d'ajouter les spécificités de l'enfant.

Exercice 8 : Crée un système de gestion d'employés. Une classe Employe (nom, salaire) et une classe Manager qui hérite d'Employe et possèd'un attribut supplémentaire "bonus". Calcule le salaire total du Manager.

Correction :

class Manager(Employe):   def init(self, nom, salaire, bonus):     super().init(nom, salaire)     self.bonus = bonus   def salaire_total(self):     return self.salaire + self.bonus

Bilan et conseils

Ce qu'il faut retenir : La POO permet de construire des systèmes complexes en les divisant en petites entités autonomes (les objets). Pense toujours à tes classes en termes de "responsabilités" : que doit savoir faire cet objet ?

Comment ORBITECH Peut T'aider

ORBITECH AI Academy met à ta disposition des outils concrets pour réviser plus efficacement et progresser à ton rythme.

  • Générateur de Quiz : crée des quiz personnalisés pour tester tes connaissances et identifier tes lacunes.
  • Générateur d'Exercices : crée des exercices d'entraînement adaptés à ton niveau avec corrections détaillées.
  • Générateur de Résumés : transforme tes cours en fiches de révision claires et structurées.
  • Générateur de Mind Maps : visualise et organise tes idées avec des cartes mentales générées automatiquement.

Tous ces outils sont disponibles sur ta plateforme ORBITECH. Connecte-toi et explore ceux qui correspondent le mieux à tes besoins !

Contenu en libre diffusion — partage autorisé sous réserve de mentionner ORBITECH AI Academy comme source.

COMMENCE DÈS MAINTENANT

Rejoins ORBITECH et accède à des cours, exercices et quiz personnalisés.

Commencer gratuitement
🌍 ORBITECH AI Academy — Free education in 88 languages for 171 countries