CompteB : Une classe pour modéliser un compte en banque, seconde version
CompteB : Une classe pour modéliser un compte en banque, deuxième version
On va reprendre la classe CompteA des pages précédentes pour écrire son code de façon un peu plus satisfaisante ; on nomme CompteB la nouvelle classe.Voici le code proposé :
package banque;
public class CompteB {
private int montant;
public CompteB() {
}
public void modifier(int somme) {
if (this.montant + somme >= 0)
this.montant = this.montant + somme;
}
}
Voici les modifications principales :
- On a décidé de faire de la classe CompteB une classe publique (avec le modificateur public), ce qui permet qu'elle soit utilisable par tout programme Java. Cela rend nécessaire de mettre le code de la classe dans un fichier qui s'appelle CompteB.java.
- L'indication
package banque;
indique qu'on a mis la classe CompteB dans un paquetage ; nous détaillerons plus tard les paquetages. Néanmoins, cela rend nécessaire que le bytecode de la classe CompteB.java (i.e. compteB.class) soit dans un répertoire qui s'appelle banque.
La classe CompteB étant dans le paquetage banque, son nom complet est banque.CompteB ; CompteB est son nom court.
Sous eclipse, il suffit de créer un paquetage nommé banque et de mettre le code de la classe CompteB dans ce paquetage.
Si on travaille directement dans une console (une fenêtre d'exécution), il faut créer un répertoire de nom banque et y mettre le fichier CompteB.java.
- En écrivant :
private int montant;
on a décidé que l'attribut montant est privé. Cela signifie qu'on ne peut y accéder dans l'écriture du code Java qu'à l'intérieur de la classe CompteB, et plus précisément par la référence this (implicite ou explicite) ; si on a par ailleurs :
CompteB unCompte = new CompteB();
il n'est plus possible d'écrire :
unCompte.montant = 10;
On garde ainsi le contrôle sur les modifications de cet attribut. Ici, on assure que le montant du compte ne sera jamais négatif.
D'une manière générale, il est conseillé de choisir le satut privé pour tous les attributs.
Le fichier CompteB.java
© Charon Irène Télécom ParisTech 2010