JAVA probleme

bonjour a tous !
En fait j'ai un probleme en Java qui me bloque dans l'implementation de mon code
En gros, j'ai une "grosse" classe nommée ProjPeage, a l'intérieur de laquelle j'ai une classe "Borne".
Dans Borne, j'ai un attribut 'recu'.
Je veux dans un procédure de "ProjPeage" mettre a jour cet attribut en le comparant a un entier, puis en l'incrémentant .
Seulement le compilo me marque lorsque j'utilise 'Borne.recu' :
non-static variable recu cannot be referenced from a static context

Bref, ai-je le droit de mettre a jour cet attribut de cette maniere ?
Comment corriger mon erreur (qui me bloque) ?

5 réponses

  1. Modérateur
    salut

    puis-je donner un bête conseil ???

    il est intéressant de séparer le moteur même de l'application, de la vue .. question de lisibilité de l'application...

    Chouba,
    Pochard d'assaut .. 
    0
    1. Ou bien (si c correct de faire comme cela dans ton cas) déclarer la variable que tu veux incrémenter comme static:

      public static int recu;

      ....

      Tu pourras alors faire:

      Borne.recu++;

      mais si t'as variable est static, elle aura la m valeur dans chaque instance de la classe Borne ... (regarde si c correcte pour ton code (ou pas))
      0
      1. Contributeur
        Bonjour!!

        C'est normal que tu ne puisses pas l'utiliser comme ça. En général, les variables d'une classe ne s'atteignent pas comme ça.
        Il faut que tu instancies une variable de classe Borne.

        Après, pour récupérer ou modifier ta variable recu, il faut que tu utilises les fonctions classiques:

        getRecu();
        et
        setRecu( int i); // en imaginant que c'est un entier.

        Pour ton cas d'incrémenter, tu peux faire

        setRecuIncrementer(){
              this.recu++;
        }


        Maily :-))))
        Boumj'chtattrape
        0
        1. Salut, c'est difficile de résoudre le problème comme ça, tu peux balancer ton code source pour qu'on trouve ton erreur ?

          Merci.
          0