Vous êtes sur la page 1sur 2

Université Cadi Ayyad Année universitaire 2019/2020

Faculté des Sciences Semlalia


Marrakech

TD/TP: Interfaces
LP_R2SI: Programmation Java

On veut effectuer une application qui gère un stock d’un magasin. Voici une
spécification du programme en termes de classes et d’interfaces:

1. On a trois interfaces
1. Vendable par kilogramme: l'interface pour les produits qui se
vendent par kilogramme.
Méthodes:
1. vendre: cette méthode reçoit la quantité vendue du produit,
retourne le revenu du magasin et modifie le stock
2. Vendable par pièce: l'interface pour les produits qui se vendent par
pièces.
Méthodes:
1. vendre: cette méthode reçoit la quantité vendue du produit,
retourne le revenu du magasin et modifie le stock
3. Solde qui simule les ventes effectuées.
Méthode:
1. lancer le solde: cette méthode baisse le prix du produit par le
pourcentage donné
2. terminer le solde: cette méthode augmente le prix du produit
par le pourcentage donné

2. On a une classe générale des Articles.

 Propriétés:
1. prix d'achat: le prix pour lequel le supermarché achète le produit
2. prix de vente: le prix pour lequel le supermarché vend le produit
3. nom: le nom du produit
4. fournisseur: le nom du fournisseur du produit

Méthodes (autre que le constructeur):


5. calculateur du taux du rendement
6. description des caractéristiques du produit sur l'écran (les prix, le
nom, le fournisseur; rendement)

Cette classe n'implémente aucune interface.


3. On a deux classes dérivées des Articles

Chaque classe dérivée de Article respecte la règle suivante: au moment de la


construction de l'objet, le stock et vide.

1. La classe des artciles élécroménagers


Propriétés suplémentaires:
1. nombre de pièces en stock
Méthodes supplémentaires (autre que le constructeur):
2. remplir le stock
3. description des caractéristiques du produit sur l'écran (les prix,
le nom, le fournisseur; rendement; stock)
Il faut implémenter les interfaces correspondantes à cette classe.

2. La classe des primeurs


Propriété supplémentaires:
1. quantité en stock
Méthodes supplémentaires:
2. remplir le stock
3. description des caractéristiques du produit sur l'écran (les prix,
le nom, le fournisseur; rendement; stock)
Il faut implémenter les interfaces correspondantes à cette classe,
sachant que les primeurs ne peuvent pas être vendus en solde.

4. On a une classe pour les magasins

Propriétés:
1. Dépenses: le coût d'achat des produits
2. Revenus: les revenus après la vente des produits
3. Produits: deux tableaux de deux articles (éléctroménagers et primeurs)

Méthodes (autre que le constructeur):


4. description de l'état du magasin
5. calculateur du taux de rendement

Questions
1. Coder les interfaces et des classes.
2. Créer une méthode main qui crée un magasin, définit les articles à vendre,
effectue le remplissage du stock et simule les achats. (Utiliser un autre
package).
3. Créer une nouvelle interface pour les classes qui ont une méthode de
description et modifier le code.
4. Créer une nouvelle interface pour les classes qui ont une méthode pour
calculer le rendement et modifier le code