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. 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
    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. 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. 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