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
Configuration: Windows XP
Netscape 7.1

19 réponses

  1. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    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
  2. JAVAdeb
     
    c le bon code , avc le premier il marche , avec le 2 ème non , je sais pas ou est le pb !!!!
    0
  3. JAVAdeb
     
    Si tu veux je peux poser tout le programme
    0
  4. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    Attend attend quel programme ne marche pas?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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
  7. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    Bah pourtant c'est impossible que ca ne marche pas
    0
  8. JAVAdeb
     
    je sais pas quoi !!!!!!! mais ça marche pas je suis sûr
    0
  9. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    Tu peux donnner tout ton code que je puisse tester la compilation? Enfin sauf si c'est trop long bien sur.
    0
  10. 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
  11. 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
  12. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    Courage non je sais déjà que ca va marcher, sinon c'est une erreur dans ton code.
    0
  13. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    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
  14. 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
  15. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    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
  16. 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
  17. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    Parce que tu définis tout en une seul fois !!!
    0
  18. JAVAdeb
     
    Oui Oui je vois le pb . désolé Merci bien mon ami , Merci bcp
    0
  19. fanette
     
    Slt j'ai un besoin d'un prog simplexe en java
    0