– Diagramme de classes :
– Classe CompteBancaire
public class CompteB {
int code;
float solde;
static int nbComptes=0;
public CompteB(float s){
solde=s;
++nbComptes;
code=nbComptes;
}
public CompteB(){
this(0);
}
public void verser(float mt){
solde=solde+mt;
}
public void retirer(float mt){
solde-=mt;
}
public String toString(){
return ("code="+code+ "Solde="+solde);
}
}
Classe CompteEpargne :
public class CompteE extends CompteB {
float taux=6;
public CompteE(float s){
super(s);
}
public CompteE(){
super(0);
}
public void calculInterets(){
solde=solde*(1+taux/100);
}
public String toString(){
return "Compte Epargne"+super.toString()+ "taux="+taux;
}
}
– Classe Payant :
public class CompteP extends CompteB {
public CompteP(float s){
super(s);
}
public CompteP(){
super(0);
}
public void verser(float mt){
//solde=solde+mt;
//solde=solde-5;
super.verser(mt);
super.retirer(5);
}
public void retirer(float mt){
//solde=solde-mt;
//solde=solde-5;
super.retirer(mt);
super.retirer(5);
}
public String toString(){
return "Compte Payant"+super.toString();
}
}
– Classe TestCompte :
public class TestCompte {
public static void main(String[] args) {
CompteB c1=new CompteB(5000);
CompteE c2=new CompteE(55000);
CompteP c3=new CompteP();
c1.verser(6000);
c1.retirer(4000);
System.out.println(c1.toString());
c2.verser(3300);
c2.retirer(2000);
System.out.println(c2);
c2.calculInterets();
System.out.println(c2);
c3.verser(2000);
System.out.println(c3.toString());
}
}
Résultat de l’exécution :
code=1Solde=7000.0
Compte Epargnecode=2Solde=56300.0taux=6.0
Compte Epargnecode=2Solde=59677.996taux=6.0
Compte Payantcode=3Solde=1995.0
Aller à l'éxercice