Vous êtes sur la page 1sur 2

Université Sidi Mohammed Ben Abdellah

Ecole Normale Supérieure de FES A. U : 2018/2019


Licence Technologies Educatives Et Développement Multimédia
TD de Programmation Orienté Objet Java
Exercice
On demande de créer une application java orientée objet permet de gérer des comptes bancaires des
individus. Une classe Individu se compose des Attributs : numeroCin, nom, prenom, dateNaissance,
adresse ; et des méthodes : changeAdresse(), calculSalaire(),dateRetraite().
Les comptes sont définis par son code et son solde. Il existe deux types de Comptes : les comptes
courants et les comptes épargnent. Un compte courant possède en plus un découvert. Un compte épargne
est un compte qui possède en plus un taux d’intérêts. Chaque compte peut subir plusieurs opérations, Il
existe deux types d’opérations : Versement et Restait. Chaque opération est définie par son numéro, sa
date et son montant
L’application doit permettre de :
 Créer des comptes
 Effectuer un versement d’un montant dans un compte
 Effectuer un retrait d’un montant dans un compte. Pour le compte épargne le retrait ne peux
s’effectuer que si le solde est supérieur au montant à retirer, alors que pour le compte courant, le
retrait peut s’effectuer à condition que le solde final soit inférieur a (-découvert).
 Effectuer un virement d’un montant d’un compte vers un autre. (Retirer le montant du compte et le
verser l’autre compte)
 Consulter le solde du compte
 Mettre à jour le solde du compte en tenant compte des intérêts. Cette opération ne devrait que
les comptes épargnes
 Consulter la liste des opérations effectuées sur le compte
 Consulter le total des montants de des versements
 Consulter le total des montants de des retraits
Travail à faire :
1. Etablir un diagramme de cas d’utilisation (Use Case) avec UML (Unified Modeling Language)
En utilisant le logiciel power AMC ou Rational Rose

2. Etablir un diagramme de Séquence


3. Etablir un diagramme de classes
Operation
Composite
Individu Compte (abstract)
1…1 -numero : int
-code : int
-numeroCin : int Compte -dateOperation : date
-Nom :String -solde : double
-Prenom:String -montant : double
-dateNaissance :Date
+ verser (solde montant) : void
-adresse : String +retirer (double montant) : void
+changeAdresse(), + versement (double montant, 0…*
calculSalaire() Compte compte) : void operation
dateRetraite().
+consulter Solde ( ) : double
Héritage
+updatSolde ( ) : void
Agrégat +listeOperation : list <Operation> Versement Retrait
+totalVersement ( ) : double
+totalRetrait ( ) : double

Héritage Héritage
Openkjhjh
Compte courant khj
CompteEpargne
-decouvert : double
-taux : double
+<< Override >> retiré (double montant) : +<<Override>> rentier (solde montant): void
void +<<Override>> update Solde ( ) : void
+<< Override >> updatSolde ( )

4. Ecrire les codes java des classes suivants :


a. La classe Individu qui se compose :
 des Attributs : numeroCin, nom, prenom, dateNaissance, adresse,
 des méthodes : changeAdresse(), calculSalaire(),dateRetraite()
b. La classe abstract Compte avec les propriétés suivantes
 protected Code : int ; solde : double
 Ecrire les getters et les setters
 Ecrire les constructeurs sans et avec paramètres
 Ecrire les méthodes de la classe Compte suivantes :
 Public void verser (double montant) ; Public void retirer (double montant)
 Public void verser (double montant. Compte) ; Public double consulter_solde ( )
 Public void update_solde ( ) ;Public List <operationaliste> Operation ( )
 Public double total_Versement ( ) ;Public double total_Retrait( )
c. La classe CompteCourant qui hérite de la classe Compte avec les propriétés suivantes
 Private decouvert : double ; Ecrire les getters et les setters
 Ecrire les constructeurs sans et avec paramètres
 Ecrire les méthodes de la classe CompteCourant suivantes :
 Public void <<Override>>retirer (double montant)
 Public void <<override>> updateSolde ( )
d. La classe CompteEpargne qui hérite de la classe Compte avec les propriétés suivantes
 Private taux : double ; Ecrire les getters et les setters
 Ecrire les constructeurs sans et avec paramètres
 Ecrire les méthodes de la classe CompteEpargne suivantes :
 Public void <<Override>>retirer (double montant) ;
 Public void <<Override>> updateSolde ( )
e. La classe Operation avec les propriétés suivantes
 protected Code : int ; solde : double ; int numero ; dateOperation: date; montant : double
 Ecrire les getters et les setters
 Ecrire les constructeurs sans et avec paramètres
f. La classe Versement qui hérite de la classe opération
 Ecrire les getters et les setters
 Ecrire les constructeurs sans et avec paramètres
g. La classe Retrait qui hérite de la classe opération
 Ecrire les getters et les setters ; Ecrire les constructeurs sans et avec paramètres
5. Ecrire le code java (class main) des opérations qui répond aux besoins précis.

Vous aimerez peut-être aussi