Il s'agit de créer une classe pour
modéliser une banque. Une banque contient ici un ensemble de
comptes en banque ; les comptes en banque sont
modélisés par la classe Compte
définie précédemment. La banque
attribue à chaque nouveau compte un numéro ; elle
garde en mémoire, grâce à l'attribut dernierNumero,
le dernier numéro attribué et attribue,
à l'ouverture de compte suivant, le numéro
suivant.
La classe banque est placée dans le
paquetage banque, comme la classe Compte.
La classe Banque possède l'attribut listeComptes
qui doit contenir la liste des comptes. Cet attribut est de type ArrayList
; il s'agit de la classe java.util.ArrayList,
située donc dans le paquetage java.util de l'API. Cette classe
sert à gérer des listes d'objets ; pour pouvoir
servir à différents types d'objets, cette classe
est générique. La
généricité est un sujet important que
vous pourrez étudier un peu plus tard. Il suffit d'observer
ici comment on déclare une liste destinée
à des objets de type Compte :
ArrayList<Compte>
listeComptes;
et comment on instancie cette classe de façon à
construire une liste au départ vide :
listeComptes = new
ArrayList<Compte>();.
Cliquez sur les différents liens pour en savoir plus, et en particulier sur celui concernant la boucle for en regardant dans ce lien ce qui concerne le second type de boucle for. .
package banque;En exercice, on peut ajouter à la classe Banque une méthode supprimerCompte qui supprime un compte de numéro donné. On n'essayera pas de garder le numéro devenu inutile pour un compte ultérieur. La méthode supprimerCompte doit retourner une valeur booléenne ; si la suppression est faite, la méthode retourne la valeur true, s'il n'existe aucun compte correspondant au numéro indiqué, la méthode retourne la valeur false.
import java.util.ArrayList;
public class Banque {
private int dernierNumero; // pour numeroter les comptes
private ArrayListlisteComptes = new ArrayList ();
public int ajouterCompte(String nom, int montant) {
dernierNumero++;
Compte nouveauCompte = new Compte(nom, dernierNumero, montant);
listeComptes.add(nouveauCompte);
return dernierNumero;
}
public void lister() {
for (Compte compte : listeComptes)
System.out.println(compte);
System.out.println();
}
/* Cherche dans listeCompte s'il existe un compte
dont le numero est le numero indique en parametre a la methode.
Retourne ce compte s'il en existe un,
retourne null sinon. */
public Compte chercherCompte(int numero) {
for (Compte compte : listeComptes)
if (compte.getNumero() == numero) return compte;
return null;
}
public void modifierCompte(int numero, int somme) {
Compte compte = this.chercherCompte(numero);
if (compte == null) return;
compte.modifier(somme);
}
}
Le fichier Banque.java avec la méthode supprimerCompte.
Vous pouvez faire les exercices suivants :
© Charon Irène Paris 2012