Lycee lissan eddine ibn el khatib Laayoune 2014/2015
BTS-DSI 2ème semestre
Examen mai 2013 : POO
Soit le diagramme d’UML suivant :
1. Réaliser la classe Commande qui a comme attributs (4pts):
NumCommande de type entier, DateCommande de type Date, NomFournisseur de type String
Elle a comme méthodes :
Un constructeur avec arguments
Des accesseurs (getters)
Des mutateurs (modificateurs ou setters)
La méthode redéfinie toString() retournant une chaine contenant toutes les informations d’une
commande.
La méthode redéfinie equals(Object obj) qui compare deux commandes et prend comme critère de
comparaison le NumCommande.
2. Quelles sont les modifications à apporter à la classe commande pour faire son clonage?(1pt)
3. Réaliser la classe Client qui possède comme attributs (4pts):
CodeClient de type String, NomClient : nom du client de type String, AdrClient : adresse client de
type String , TelClient: telephone du client de type String , ListCommandes de type Vector qui
contiendra la liste des commandes effectuées par ce client.
Cette classe contient comme méthodes :
Un constructeur d’initialisation qui initialise les trois premiers attributs .
La méthode EnregistrerCommande permettant d’ajouter une nouvelle commande au vecteur
ListCommandes.
Pr [Link] Examen national mai 2014 programmation orientée objets 1
Lycee lissan eddine ibn el khatib Laayoune 2014/2015
BTS-DSI 2ème semestre
La méthode SupprimerCommande permettant de supprimer une commande du vecteur en se
basant sur le NumCommande passé en paramètre, si ce numéro n’existe pas, cette méthode
retourne false sinon elle retourne true.
La méthode redéfinie toString permettant de retourner toutes les informations d’un client ainsi
que la liste de ses commandes, s’il en dispose.
4. Un client peut être un client fidèle, créer la classe ClientFidel (2pts)
Cette classe contient comme attribut : CodeFidelite de type String ,TauxReduction de type float
Cette classe contient deux méthodes :
Un constructeur d’initialisation.
La méthode redéfinie toString() retourne une chaine contenant toutes les informations
concernant une commande.
5. Donner un programme de test de ces classes (2pts):
Créer deux commandes.
Créer deux objets de type Client l’un instancié sur la classe Client l’autre sur la classe ClientFidel.
Ajouter une commande pour chaque client
Afficher ces objets.
Pr [Link] Examen national mai 2014 programmation orientée objets 2