0
votes

Comment utiliser une variable d'un objet créé par l'utilisateur? (Java)

J'ai créé une classe et l'a laissé sur l'utilisateur à faire une instance. L'instance comporte un constructeur qui oblige l'utilisateur à saisir des valeurs à l'instance: - xxx pré>

J'ai quelques méthodes nécessitant une variable de l'instance comme: - p>

michael.dis(michael.c,michael.p,michael.b,michael.n,michael.calculate(michael.c,michael.p,michael.b));


1 commentaires

Vous voulez probablement simplement passer l'objet en tant que paramètre comme le public du public (Perfo2 Perfo), alors vous pouvez définir les variables comme Perfo.n ou Perfo.c


3 Réponses :


0
votes

Créez simplement un objet et utilisez-le

perfo2 michael = new perfo2(c,p,b,n);

 michael.dis(michael.c,michael.p,michael.b,michael.n,michael.calculate(michael.c,michael.p,michael.b));


0 commentaires

0
votes

Si je vous comprends correctement; Vous souhaitez pouvoir accéder aux variables définies dans le constructeur c, p, b, n . Vous devriez pouvoir le faire en créant des getters sur chacune des variables en tant que telles: xxx

Vous pouvez également envisager de faire le modificateur d'accès pour C, P, B & n privé; Par conséquent, cela ne peut pas être accédé à la directive de l'objet. Dedentir sur l'utilisation de l'utilisation, vous pouvez également utiliser personne1.c etc


0 commentaires

0
votes

Un code supplémentaire à mon commentaire, vous pouvez utiliser votre classe comme cet exemple. Vous pouvez probablement ajouter le pourcentage à vos variables de classe, mais je ne voulais pas vous gâcher avec votre logique

public class Perfo2 {
   private int c;
   private int p;
   private int b;
   private String n;

   Perfo2(int c, int p, int b, String n) { // constructor
      this.c = c;
      this.p = p;
      this.b = b;
      this.n = n;
   }

   public int calculate(Perfo2 perfo2) {
      return (perfo2.c + perfo2.p + perfo2.b / 60 * 100);
   }

   public void dis(Perfo2 perfo2,int per) {
      System.out.println(perfo2);
      System.out.println("Percentage:" + per + "%");
   }

   @Override
   public String toString() {
      return String.format("Name: %s%nChemistry: %s%nPhysics: %s%nBiology: %s", this.n ,this.c,this.p,this.b);
   }

   public static void main(String[] args) {
      Perfo2 p = new Perfo2(10,6,5,"Mark");
      p.dis(p, 70);;

   }
}


0 commentaires