Sie sind auf Seite 1von 2

NFA035 Série No: 1

Ecrire une application permettant de gérer le stock d'un magasin.

Voici une spécification du programme en termes de classes et d’interfaces:

- Les interfaces
1. Vendable par kilogramme: l'interface pour les articles qui se vendent par kilogramme
Méthodes:
o vendre: cette méthode reçoit la quantité vendue de l’article et modifie le stock
2. Vendable par pièce: l'interface pour les articles qui se vendent par pièces
Méthodes:
o vendre: cette méthode reçoit le nombre de pièces vendus de l’article et modifie le
stock
3. Susceptible d'être vendu en solde
Méthodes:
o lancer le solde: cette méthode baisse le prix de l’article par le pourcentage donné
o terminer le solde: cette méthode augmente le prix de l’article par le pourcentage
donné

- Les classes

1. Classe Articles : classe générale de tous les articles


Propriétés: numéro (généré automatiquement durant la création d’un article), prix d'achat,
prix de vente et nom.
Méthodes (autre que le constructeur):
o calculateur du taux du rendement ((prixVente - prixAchat) / prixAchat)
o toString() : retourner le nom et les prix de l’article
Cette classe n'implémente aucune interface.

2. Deux classes dérivées de la classe Articles :


a. La classe des artciles élécroménagers
Propriété suplémentaire: nombre de pièces en stock
Méthodes supplémentaires (autre que le constructeur):
 Ajouter un nombre de pièces au stock
 toString() : retourner le nom, les prix de l’article et le nombre de pièces
Il faut implémenter les interfaces correspondantes à cette classe.
b. La classe des articles primeurs
Propriété supplémentaires: quantité en stock
Méthodes supplémentaires:
 Ajouter une quantité au stock
 toString() : retourner le nom, les prix de l’article et la quantité en stock
Il faut implémenter les interfaces correspondantes à cette classe, sachant que les
articles primeurs ne peuvent pas être vendus en solde.

1
NFA035 Série No: 1

3. Classe Magasin
Propriétés: un vecteur (Vector)
Méthodes (autre que le constructeur):
Ajouter un article au vecteur
Sauvegarder les propriétés nom , prix d’achat et prix de vente de tous les articles
primeurs du vecteur dans le fichier « Primeurs.data »
Sauvegarder tous les articles électroménagers (comme instances) du vecteur dans le
fichier « Electro.data »
Sauvegarder les informations générées par toString de tous les articles du vecteur
dans le fichier « info.data »
Imprimer les informations du fichier « info.java »
Lire le fichier « Primeurs.data » et imprimer le nom et le rendement de chaque article
primaire.
Lire le fichier « Electro.data » et imprimer le numéro et le rendement de chaque
article électroménager.

Questions
1. Coder les interfaces et les classes.
2. Créer une méthode main qui crée un magasin, définit des articles, ajouter au fur et à
mesure les articles au vecteur, simule les ventes et tester les différentes méthodes de la
classe Magasin.
3. Modifier cette application pour avoir la possibilité de comparer deux articles au niveau de
rendement (implémenter l’interface Comparable).

Das könnte Ihnen auch gefallen