Vous êtes sur la page 1sur 2

Nom & prénom : ……………………………… CIN : …………………

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique


Université de Carthage
Institut Supérieur des Technologies de l’Information et de la Communication

Classe : GLSI-2 POO(JAVA) Nombre de pages :


Enseignantes: Amdouni Imen &
Date : Jeudi le 03/11/2022 Durée : 1h00
Ben Othman Ibtissem
Barème approximatif : Documents : autorisé  Calculatrice : autorisée 
non autorisé non autorisée 

N.B : Il faut implémenter juste les méthodes demandées, on suppose que les autres méthodes
sont déjà implémentées, vous pouvez les utiliser directement.

Enoncé :
Le but de ce programme est de gérer les clients et les produits d’une pharmacie.
Soit la conception objet suivante d’une partie de l’application.
Les attributs sont tous protected. Les méthodes sont toutes public.

1
Nom & prénom : ……………………………… CIN : …………………

A). Classe Produit, classe Medicament et classe ProdParaPharm


Les produits que vend cette pharmacie sont soit des médicaments, soit des produits de
parapharmacie. Les médicaments sont caractérisés par le fait qu’ils peuvent être génériques ou
pas, et par le fait qu’ils peuvent être délivrés sans ordonnance ou pas. Les produits de
parapharmacie sont quant à eux caractérisés par leur type (produit de beauté, cosmétique ou
diététique).
Question 1) Implémenter la classe Produit contenant la méthode void abstract afficher()
affichant les informations concernant un produit ainsi que la méthode boolean equals
(Produit p) (permettant de comparer deux produits s’ils sont identiques suivant la
référence).
Question 2) Définir le constructeur de la classe Medicament. Redéfinir la méthode void
afficher() afin qu’elle affiche tous les données d’un médicament.
Question 3) Donner le code source du constructeur de la classe ProdParaPharm ainsi que la
redéfinition de la méthode afficher().

B). Classe client


Un client est caractérisé par son nom (de type String), son prénom (de type String), le numéro
de sa carte CHIFA (de type int). Sa méthode void afficher() permet d’afficher les
informations concernant un client. Remplacer cette méthode par la redéfinition de la méthode
toString( ), donner son code nécessaire.

C). Classe Pharmacie


Une pharmacie est caractérisée par son nom (de type String), son adresse (de type String), ses
clients (Tableau de clients) et la liste de ses produits (tableau de produits).
Question 4) Donner le code source du constructeur public Pharmacie (String nom, String
adresse)
Question 5) Implémenter la méthode achat (Client c, Produit p, int qte)
Question 6) Ecrire les méthodes afficherClients() et afficherProduits() affichant
respectivement les données des clients et des produits.

D). Classe Test


Question 7) Ecrire la méthode main qui permet de :
 Créer une pharmacie.
 Créer deux clients.
 Créer deux médicaments et un produit de parapharmacie.
 Le premier client achète un médicament et un produit de parapharmacie alors que le
deuxième client achète uniquement un médicament.
 Afficher les clients et les produits de la pharmacie crée.

Vous aimerez peut-être aussi