Pb avec un programme en java

Résolu
JAVAdeb -  
 fanette -
Bonjour,
j'ai un pb avec une programme . je vous informe que j ss encore un débutant
dans une partie d'un programme, lors de la création d'un objet, quand j'utilise ce code ça marche :

ClientDeLaBanque A= new ClientDeLaBanque(1000.0,2000.0,100.0,30.0);
ClientDeLaBanque B=new ClientDeLaBanque(3000.0,4000.0,333.0,90.0);

Mais qd je met ça :

ClientDeLaBanque A,B;
A= new ClientDeLaBanque(1000.0,2000.0,100.0,30.0);
B=new ClientDeLaBanque(3000.0,4000.0,333.0,90.0);

dans la compilation s'affiche l'erreur "Identfier" Expected pour A et B!!!!!!!!

Dans le cours on a appri que les deux façons sont les mêmes, je le trouve pas . Merci de m'expliquez
A voir également:

19 réponses

arth Messages postés 10414 Statut Contributeur 1 293
 
Tu es sur que c'est le bon code ca, enfin celui-ci excactement? non dispatché? car je te l'affirme cela doit marcher.
0
JAVAdeb
 
c le bon code , avc le premier il marche , avec le 2 ème non , je sais pas ou est le pb !!!!
0
JAVAdeb
 
Si tu veux je peux poser tout le programme
0
arth Messages postés 10414 Statut Contributeur 1 293
 
Attend attend quel programme ne marche pas?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
JAVAdeb
 
ça

ClientDeLaBanque A,B;
A= new ClientDeLaBanque(1000.0,2000.0,100.0,30.0);
B=new ClientDeLaBanque(3000.0,4000.0,333.0,90.0);
0
arth Messages postés 10414 Statut Contributeur 1 293
 
Bah pourtant c'est impossible que ca ne marche pas
0
JAVAdeb
 
je sais pas quoi !!!!!!! mais ça marche pas je suis sûr
0
arth Messages postés 10414 Statut Contributeur 1 293
 
Tu peux donnner tout ton code que je puisse tester la compilation? Enfin sauf si c'est trop long bien sur.
0
JAVAdeb
 
public class Banque2 {
public static void main(String[] args){
Compte C;
C=new Compte();
System.out.println("Donnees avant le bouclement des comptes :") ;
C.afficherAvantBouclement();
System.out.println("Donnees apres le bouclement des comptes :") ;
C.afficherApresBouclement();
}}

class Compte{
private double taux1=0.01,taux2=0.02;
ClientDeLaBanque A= new ClientDeLaBanque(1000.0,2000.0,"Mohammed","Oujda");
ClientDeLaBanque B=new ClientDeLaBanque(3000.0,4000.0,"Saad","Rabat");
private double bouclerCompte(double solde,double taux){
return (solde+(solde*taux));
}
void afficherAvantBouclement(){
A.afficherClient(A.getSolde1(),A.getSolde2());
B.afficherClient(B.getSolde1(),B.getSolde2());
}

void afficherApresBouclement(){
A.afficherClient(bouclerCompte(A.getSolde1(),taux1),bouclerCompte(A.getSolde2(),taux2));
B.afficherClient(bouclerCompte(B.getSolde1(),taux1),bouclerCompte(B.getSolde2(),taux2));
}}


class ClientDeLaBanque{

private double solde1,solde2;
private String nom,ville;
ClientDeLaBanque (double a, double b, String A, String B){
solde1=a;
solde2=b;
nom=A;
ville=B;
}
double getSolde1(){
return solde1;}
double getSolde2(){
return solde2;}
void afficherClient(double solde1,double solde2){
System.out.println("client "+nom+" de "+ville);
System.out.println("Compte prive : "+ solde1+" dh");
System.out.println("Compte d'epargne : "+ solde2+" dh");

}
}
0
JAVAdeb
 
essaye de changer :

ClientDeLaBanque A= new ClientDeLaBanque(1000.0,2000.0,"Mohammed","Oujda");
ClientDeLaBanque B=new ClientDeLaBanque(3000.0,4000.0,"Saad","Rabat");

Par :

ClientDeLaBanque A,B;
A= new ClientDeLaBanque(1000.0,2000.0,"Mohammed","Oujda");
B=new ClientDeLaBanque(3000.0,4000.0,"Saad","Rabat");

et dis moi si ça marche /// courage
0
arth Messages postés 10414 Statut Contributeur 1 293
 
Courage non je sais déjà que ca va marcher, sinon c'est une erreur dans ton code.
0
JAVAdeb
 
Alors?
0
arth Messages postés 10414 Statut Contributeur 1 293
 
public class Banque2
{
public static void main(String[] args){
Compte C;
C=new Compte();
System.out.println("Donnees avant le bouclement des comptes :") ;
C.afficherAvantBouclement();
System.out.println("Donnees apres le bouclement des comptes :") ;
C.afficherApresBouclement();
}
}

class Compte
{
private double taux1=0.01,taux2=0.02;

ClientDeLaBanque A;
ClientDeLaBanque B;

public Compte()
{
A = new ClientDeLaBanque(1000.0,2000.0,"Mohammed","Oujda");
B = new ClientDeLaBanque(3000.0,4000.0,"Saad","Rabat");
}

private double bouclerCompte(double solde,double taux)
{
return (solde+(solde*taux));
}
void afficherAvantBouclement()
{
A.afficherClient(A.getSolde1(),A.getSolde2());
B.afficherClient(B.getSolde1(),B.getSolde2());
}

void afficherApresBouclement()
{
A.afficherClient(bouclerCompte(A.getSolde1(),taux1),bouclerCompte(A.getSolde2(),taux2));
B.afficherClient(bouclerCompte(B.getSolde1(),taux1),bouclerCompte(B.getSolde2(),taux2));
}
}


class ClientDeLaBanque
{
private double solde1,solde2;
private String nom,ville;
ClientDeLaBanque (double a, double b, String A, String B){
solde1=a;
solde2=b;
nom=A;
ville=B;
}
double getSolde1(){
return solde1;}
double getSolde2(){
return solde2;}
void afficherClient(double solde1,double solde2){
System.out.println("client "+nom+" de "+ville);
System.out.println("Compte prive : "+ solde1+" dh");
System.out.println("Compte d'epargne : "+ solde2+" dh");

}
}

Ca c'est tout à fait normal que cela ne marche pas, car tu n'es pas dans une fonction. Tu ne peux pas donc déclarer tes variables dans l'entête de ta classe et les modifier ensuite. Par contre comme je te l'ai mis plus haut ca marche. Car c'est dans le constructeur de la classe. Ca c'est java qui définit ca.
0
JAVAdeb
 
Oui Merci , donc ça veut dire qu'on est obligé de les modifier dans une fonction et pas ailleurs , même si les données ne sont pas privés ?!
0
arth Messages postés 10414 Statut Contributeur 1 293
 
C'est pas ce que je voulais dire :


class Compte
{
ClientDeLaBanque A;
ClientDeLaBanque B;

public Compte()
{
A = new ClientDeLaBanque(1000.0,2000.0,"Mohammed","Oujda");
B = new ClientDeLaBanque(3000.0,4000.0,"Saad","Rabat");
}

Ca ca marche.

class Compte
{
private double taux1=0.01,taux2=0.02;

ClientDeLaBanque A;
ClientDeLaBanque B;

A = new ClientDeLaBanque(1000.0,2000.0,"Mohammed","Oujda");
B = new ClientDeLaBanque(3000.0,4000.0,"Saad","Rabat");

Ca java ne le permet pas. sinon tu peux y accéder de l'extérieurde ta calsse sans souci.


0
JAVAdeb
 
Mais pk avec ça marche :

ClientDeLaBanque A = new ClientDeLaBanque(1000.0,2000.0,"Mohammed","Oujda");
ClientDeLaBanque B = new ClientDeLaBanque(3000.0,4000.0,"Saad","Rabat");

sans le constructeur!
0
arth Messages postés 10414 Statut Contributeur 1 293
 
Parce que tu définis tout en une seul fois !!!
0
JAVAdeb
 
Oui Oui je vois le pb . désolé Merci bien mon ami , Merci bcp
0
fanette
 
Slt j'ai un besoin d'un prog simplexe en java
0