46 lines
1.8 KiB
Java
46 lines
1.8 KiB
Java
|
/* Écrivez une classe pour représenter une carte. Vous y définirez au moins :
|
||
|
|
||
|
- un constructeur qui permet de préciser le numéro imprimé sur la carte,
|
||
|
- une redéfinition de la méthode toString qui produit un
|
||
|
texte contenant le numéro, le nombre actuel de crédits et le nombre total de crédits obtenus depuis le départ.
|
||
|
- une méthode voir qui renvoie le nombre actuel de crédits.
|
||
|
- une méthode crediter qui ajoute un crédit à la carte (si possible).
|
||
|
- une méthode vider qui remet le compte à zéro lorsque le client bénéficie d'une gratuité.
|
||
|
L'un des développeurs du logiciel, glouton et peu scrupuleux, décide de se créer une yes card, c'est à dire une carte qui dit toujours qu'il a le droit à une ristourne (les crédits restent bloqués à 10). Écrivez une nouvelle classe qui
|
||
|
représente une telle carte, avec les mêmes méthodes que la classe précédente. */
|
||
|
|
||
|
public class Deduction{
|
||
|
private int numeroCarte;
|
||
|
private int nombreCreditActuel;
|
||
|
private int nombreCreditTotal;
|
||
|
|
||
|
public Deduction(int numero){
|
||
|
this.numeroCarte = numero;
|
||
|
this.nombreCreditActuel = 0;
|
||
|
this.nombreCreditTotal = 0;
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public String toString(){
|
||
|
return "Numéro de carte : " + this.numeroCarte + "\nNombre de crédit actuelle : " + this.nombreCreditActuel + "\nNombre de crédit total : " + this.nombreCreditTotal;
|
||
|
}
|
||
|
|
||
|
public int voir(){
|
||
|
return this.nombreCreditActuel;
|
||
|
}
|
||
|
|
||
|
public int crediter(){
|
||
|
if(this.nombreCreditActuel < 10){
|
||
|
this.nombreCreditActuel++;
|
||
|
this.nombreCreditTotal++;
|
||
|
}
|
||
|
if (this.nombreCreditActuel == 10) {
|
||
|
vider();
|
||
|
}
|
||
|
return this.nombreCreditActuel;
|
||
|
}
|
||
|
|
||
|
public void vider(){
|
||
|
this.nombreCreditActuel = 0;
|
||
|
}
|
||
|
}
|