01 package fr.isae.bank;
02
03 /**
04 * <code>CompteSimple</code> decrit un compte banquaire de base. Ce compte est
05 * en euros. Il est caracterise par un titulaire et un solde (positif ou negatif).
06 * Il autorise seulement les operations de credit et de debit.
07 *
08 * @author <a href="mailto:garion@isae.fr">Christophe Garion</a>
09 * @author <a href="mailto:cregut@enseeiht.fr">Xavier Cregut</a>
10 * @version 1.0
11 */
12 public class CompteSimple {
13
14 private Personne titulaire;
15
16 private double solde;
17
18 /**
19 * Cree un <code>CompteSimple</code> avec un montant intial.
20 *
21 * @param titulaire le titulaire du compte
22 * @param solde le montant initial
23 */
24 public CompteSimple(Personne titulaire, double solde) {
25 this.titulaire = titulaire;
26 this.solde = solde;
27 }
28
29 /**
30 * Cree un <code>CompteSimple</code> avec un montant initial nul.
31 *
32 * @param titulaire a <code>Personne</code> value
33 */
34 public CompteSimple(Personne titulaire) {
35 this(titulaire, 0);
36 }
37
38 /**
39 * Le solde du compte.
40 *
41 * @return la valeur du solde du compte
42 */
43 public double getSolde() {
44 return this.solde;
45 }
46
47 /**
48 * Le titulaire du compte.
49 *
50 * @return un objet de type <code>Personne</code> qui est le titulaire
51 */
52 public Personne getTitulaire() {
53 return this.titulaire;
54 }
55
56 /**
57 * <code>crediter</code> credite le compte du montant fourni (en euros).
58 *
59 * @param montant le montant a crediter
60 */
61 public void crediter(double montant) {
62 this.solde = this.solde + montant;
63 }
64
65 /**
66 * <code>debiter</code> debite le compte du montant fourni (en euros).
67 *
68 * @param montant le montant a debiter
69 */
70 public void debiter(double montant) {
71 this.solde = this.solde - montant;
72 }
73
74 @Override public String toString() {
75 return "Compte de " + this.titulaire + ", solde = " + getSolde();
76 }
77 }
|