Exercice java orienté objet : classe, méthodes et constructeur - compte bancaire

Exercice 1 : Méthodes ,Tableau

Voici le texte d’une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes {sidebar id=8}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Compte {
int solde = 0 ;
void deposer ( int montan t ) {
solde = solde + montant ;
}
void retirer ( int montant ) {
solde = solde ? montant ;
}
void virerVers ( int montant , Compte destination ) {
autre . retirer ( montant ) ;
this . deposer ( montant ) ;
}
void afficher ( ) {
Terminal . ecrireString ( " solde : "+ solde ) ;
}
}

Question 1

Comment fonctionne la méthode virerVers ? Combien de comptes fait-elle intervenir ?
 

Question 2

Créez deux comptes que vous affecterez à deux variables. Ecrivez le code correspondant aux opérations suivantes :
– dépot de 500 euros sur le premier compte.
– dépot de 1000 euros sur le second compte.
– retrait de 10 euros sur le second compte.
– virement de 75 euros du premier compte vers le second.
– affichage des soldes des deux comptes.
Vous mettrez le code java correspondant à cette question dans la méthode main d’une nouvelle classe appelée TesteCompte. Vous compilerez et testerez ce programme.

Question 3

Créez un tableau de dix comptes. Pour cela, notez bien qu’il faut d’abord créer le tableau puis créer successivement les dix comptes à mettre dans les dix cases de ce tableau.
Dans chaque case, faites un dépot de 200 euros plus une somme égale à 100 fois l’indice du compte dans le tableau.
Ensuite, vous ferez un virement de 20 euros de chaque compte vers chacun des comptes qui le suivent dans le tableau (par exemple, du compte d’indice 5, il faut faire des virements vers les comptes d’indice 6,
7, 8 et 9).
Enfin, vous afficherez les soldes de tous les comptes.
Ici encore, vous testerez et compilerez le code proposé.

Exercice 2 : constructeurs

Cet exercice reprend la classe Compte de l’exercice 1. {sidebar id=1}

Question 1

Complétez la classe Compte avec une information supplémentaire : le nom du titulaire du compte (type  String). Vous modifierez la méthode d’affichage pour qu’elle affiche cette information.

Question 2

Créez un constructeur pour la classe Compte. Ce constructeur doit prendre en paramètre le nom du titulaire du compte.
Donnez le code de création d’un compte qui appelle ce constructeur.

Question 3

Faut-il prévoir des méthodes permettant de changer le nom du titulaire du compte ?

Exercice 3 : méthodes statiques ou non

Parmi les méthodes de la classe suivante, lesquelles peuvent être statiques et lesquelles ne peuvent en aucun cas être statiques ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class Exo12_3{
int x , y ;
String nom;
void afficher ( ) {
Terminal . ecrireString ( nom + " " + x + " " + y ) ;
}
void ajouter ( Exo12_3 obj ) {
x = x + obj . x ;
y = y + obj . y ;
nom = nom + obj . nom;
}
Exo12_3 nouveau ( int n ) {
Exo12_3 r e s = new Exo12_3 ( ) ;
res . x = n ;
res . y = n * 2 ;
res . nom = "Auto_ "+n ;
return res ;
}
boolean plusGrand ( Exo12_3 obj ) {
if ( obj . x == x ) {
return y> obj . y ;
} else {
return x> obj . x ;
}
}
boolean compare ( Exo12_3 obj1 , Exo12_3 obj2 ) {
i f ( obj1 . x == obj2 . x ) {
return obj1 . y>obj2 . y ;
} else {
return obj1 . x>obj2 . x ;
}
}
}