TP Poo
TP Poo
TP Poo
Exercice 1 :
On souhaite créer une application JAVA pour la gestion des livres et des adhèrents d’une
bibliothèque.
1. Créez une classe Personne avec les attributs privés : nom, prenom, email, tel, et age.
Ajoutez le constructeur avec paramètres pour initialiser les différents attributs et la méthode
toString() qui retourne une chaîne de caractères contenant les valeurs des attributs.
2. Créez une deuxième classe Adherent qui hérite de la classe Personne et qui contient
l’attribut numAdherent et redéfinit la méthode toString().
3. Créez une troisième classe Auteur qui hérite de la classe Personne, qui contient l’attribut
numAuteur et redéfinit la méthode toString().
4. Créez la classe Livre qui contient un attribut ISBN (entier), un titre (chaîne ) et un auteur.
Ajoutez également la méthode toString() qui retourne le ISBN, le titre et les informations de
l’auteur.
5. Créez une application qui contient une méthode main() pour tester les différentes classes,
dans laquelle :
— déclarez et intentiez un adhèrent ;
— déclarez et instanciez un livre qui est écrit par un auteur ;
— affichez les informations de l’adhèrent et du livre.
Exercice 3 :
Créez une classe de base appelée Vehicule avec les attributs et méthodes suivants :
• Attributs :
▪ nom : Une chaîne de caractères représentant le nom du véhicule.
▪ prix : Un double représentant le prix du véhicule.
• Méthodes :
▪ emettreSon(): Une méthode qui affiche un son générique du véhicule (par
exemple, "Le véhicule émet un son inconnu.").
▪ afficherInformations(): Une méthode qui affiche des informations de base sur
le véhicule, y compris son nom et son prix.
Créez des sous-classes pour différents types de véhicules, par exemple :
• Voiture : une classe qui hérite de Vehicule et a les attributs supplémentaires modele,
annee, et redéfinit la méthode emettreSon() pour afficher "La voiture vrombit.".
• Moto : une classe qui hérite de Vehicule et a les attributs supplémentaires marque,
puissance, et redéfinit la méthode emettreSon() pour afficher "La moto rugit.".
On souhaite créer une hiérarchie de classes pour représenter différentes figures géométriques
en utilisant des classes abstraites en Java. Vous devrez définir une classe abstraite Figure qui
servira de base pour les différentes figures, telles que les cercles, les rectangles et les triangles.
Chaque sous-classe de Figure devra implémenter les méthodes calculerAire() et
calculerPerimetre() pour calculer l'aire et le périmètre de la figure.
• Constructeur :
▪ Rectangle(String nom, double longueur, double largeur) : Initialise un
rectangle avec un nom, une longueur et une largeur.
• Méthodes :
▪ calculerAire() : Calcule l'aire du rectangle (longueur * largeur).
▪ calculerPerimetre() : Calcule le périmètre du rectangle (2 * (longueur +
largeur)).
Dans une classe principale, créez des objets de différentes figures géométriques, calculez leur
aire et leur périmètre en utilisant les méthodes des sous-classes, et affichez les détails de
chaque figure à l'aide de la méthode afficherDetails.
1. Interface Empruntable :
• Créez une interface appelée Empruntable qui définit deux méthodes :
emprunter() et retourner().
• Cette interface représente le comportement commun à tous les objets qui peuvent
être empruntés et retournés.
2. Classes Concrètes Livre et DVD :
• Implémentez l'interface Empruntable avec deux classes concrètes : Livre et
DVD.
• Chaque classe doit avoir des attributs spécifiques, tels que le titre, l'auteur pour
le livre, et le titre, le réalisateur pour le DVD.
• Créer un attribut booléen pour suivre l'état d'emprunt de chaque objet.
3. Classe Utilisateur :
• Créez une classe Utilisateur avec un attribut pour le nom de l'utilisateur.
• Ajoutez une méthode emprunterObjet(Empruntable objet) qui prend en
paramètre un objet empruntable et appelle la méthode emprunter() sur cet objet.
Mr. Abdelmajid BOUSSELHAM 5
Programmation Orientée Objet Java 2023
4. Classe GestionBibliothequeApp :
• Dans une classe principale appelée GestionBibliotheque, créez quelques
instances de Livre, DVD et Utilisateur.
• Appelez la méthode emprunterObjet() sur l'utilisateur en passant différentes
combinaisons d'objets empruntables (livres et DVD).
• Appelez également la méthode retourner() sur certains objets empruntés.
Exercice 7 : Le polymorphisme
On souhaite développer une application pour gérer les paiement, pour cela, vous Créez les
classes suivantes :
1. Classe de Paiement :
• Créez une classe de base appelée Paiement avec une méthode
effectuerPaiement(double montant).
• La classe Paiement peut avoir des attributs communs à tous les moyens de
paiement, par exemple, le montant, le numéro de transaction, etc.
2. Classes Dérivées CarteCredit et PayPal :
• Héritez de la classe Paiement pour créer deux classes dérivées : CarteCredit et
PayPal.
• Chaque classe dérivée peut ajouter des attributs spécifiques, tels que le numéro
de carte pour CarteCredit ou l'adresse email pour PayPal.
• Implémentez la méthode effectuerPaiement(double montant) dans chaque
classe dérivée pour simuler le processus de paiement en affichant un message
approprié.
3. Classe Commande :
• Créez une classe Commande qui représente une transaction d'achat.
• Ajoutez un attribut pour le montant de la commande et un attribut pour le moyen
de paiement (CarteCredit ou PayPal), de type Paiement.