Probleme de tableau d'objets

Tavarez59282 Messages postés 13 Date d'inscription jeudi 28 avril 2005 Statut Membre Dernière intervention 20 janvier 2007 - 20 janv. 2007 à 18:04
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 - 20 janv. 2007 à 18:14
Bonjour à tous, voilà je suis étudiant et pour un projet je dois coder un jeu de yams. Pour ceux qui ne connaissent pas c'est un jeu de dés. Voilà le problème est simple en apparence mais ca ne marche pas et je ne vois pas pourquoi. J'ai créé une classe dé: class De qui représente un dé par une valeur. Dans le jeu de yams on manipule 5 dés je dois donc créer une classe jeu_de_des qui créera un jeu de 5 dés à l'aide d'un tableau et voila le problème. Je crée un array comme suit: De jeu_de_de =
{ new De(1), new De(1), ... }. Ce qui crée un tableau de 5 dés dont la valeur initiale est 1. Maintenant je veux tester que tout celà marche bien et ca ne marche pas. Dans ma classe Main dans la fonction main() je crée une nouvelle instance de mon tableau comme ceci : JeuDeDes jdd = new JeuDeDes();
Ce qui théoriquement devrait créer un nouveau jeu de dé. Je veux donc appeller la fonction println() pour afficher sur la sortie standard et afficher le champ valeur de l'objet De. J'ai donc pensé à écrire system.out.println(jdd[i].valeur) mais ça ne marche pas alors j'en conclue que mon tableau n'a pas été créé. C'est peu-être un problème de constructeur mais je ne vois pas comment faire alors je vous copie le code à la suite. Dites moi si vous trouvez l'erreur, merci :).

public class De {
    double valeur;
    /** Creates a new instance of De */
    public De(double x) { x=this.valeur;
       }
      
}

public class JeuDeDes extends De {
   
   
    /** Creates a new instance of JeuDeDes */
   
   
    public JeuDeDes()
    {
      jdd [] =  { new De(1),....,....,....};
      
    }

public Main() { }

public void initialise(int i)
    {   
    }
   
    public static void main(String[] args) {int i;
       
      JeuDeDes jdd  = new JeuDeDes();
       system.out.println(jdd[0].valeur);
    }

1 réponse

Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
20 janv. 2007 à 18:14
Salut:

public class De {
    double valeur;
    /** Creates a new instance of De */
    public De(double x) { x=this.valeur;} // FAUX
}



L'affectation est mal faite:






public class De {

    double valeur;

    /** Creates a new instance of De */

    public De(double x) { valeur = x;} // VRAI

}



__________________________________________________________
A.B. :  Savoir c'est être heureux ...
0
Rejoignez-nous