IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Plusieurs Problèmes (OverFlowError)


Sujet :

Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Plusieurs Problèmes (OverFlowError)
    Bonjour,
    Le titre n'est peut-être pas très explicite mais je n'ai pas trouver autre chose.

    Voila mes problèmes :
    -Quand je run mon projet,j'obtiens un OverFlowError et je n'ai pas réussi à la solutionner.

    -Ma class Play.java ne fonctionne pas correctement, normalement chaque seconde un bouton doit rester visible et les autres doivent disparaître et quand on clique sur un bouton notre score doit augmenter de 5.Mais Rien ne se passe.

    -Quand je lançais le projet avant l' OverFlowError toutes les Fenetres s’ouvraient alors qu'il ne faut que MenuGenerated au début.

    Merci d'Avance

    Justyce
    Fichiers attachés Fichiers attachés

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Pour debugger à ta place, tu ne trouveras pas beaucoup de volontaires....
    Donne le code minimal le plus court possible qui reproduit le problème.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre éclairé
    Avatar de bpy1401
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2003
    Messages
    471
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2003
    Messages : 471
    Points : 831
    Points
    831
    Par défaut
    Bonjour Justyce

    Tu as une belle boucle infinie qui se termine donc par un StackOverflowError

    1. Tu appel le constructeur de la classe Play
    2. Qui appel la méthode setupGUI
    3. Qui fait
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      _2.addActionListener(new ScoreAdd());
      donc appel le constructeur ScoreAdd
    4. ScoreAdd fait un extends de Play donc appel le contructeur de Play et donc tu reviens en 1


    je te laisse le soin de débloucler cette merveilleuse boucle infinie.

    Bon courage
    Page sur Developpez : http://pbriand.developpez.com

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci bpy1401 car je ne savais pas d'où venait l'erreur.
    Donc je vais retourner sur ma class Play et essayez de solutionnez l'erreur.

    @dinobogan
    Ok mais comme je ne savais pas d'où venait l'erreur et comment elle se produisait je ne pouvait pas donner un code qui face la même chose.

    Justyce

    EDIT: j'ai ajouter une valeur boolean enable un peu comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Boolean enable = false;
    SetupGUI(){
    if(enable=true){
    bouton.addActionListener(new ScoreADD());
    enable =false;
    }}
    //et dans la méthode qui lance play.java
    enable = true;

  5. #5
    Membre éclairé
    Avatar de bpy1401
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2003
    Messages
    471
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2003
    Messages : 471
    Points : 831
    Points
    831
    Par défaut
    Bonjour Justce

    ce que tu fait ressemble plus à un pansement pour cacher la blessure. Ton problème vient plus d'un problème architecture objet.

    Cordialement
    Page sur Developpez : http://pbriand.developpez.com

  6. #6
    Membre éclairé Avatar de JoeChip
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 536
    Points : 803
    Points
    803
    Par défaut
    Ok mais comme je ne savais pas d'où venait l'erreur et comment elle se produisait je ne pouvait pas donner un code qui face la même chose.
    Justement, pour savoir d'où elle vient, ce qu'on fait c'est supprimer des morceaux de codes qui ne sont pas censés pouvoir provoquer l'erreur... Et on essaie de n'appeller que la partie qui provoqus l'erreur, ce qui diminue les possibilités. Car l'idée, c'est d'interpréter mentalement le code, pour savoir ce qu'il fait, se mettre à la place de l'ordi (de la JVM en l'occurence), quoi.

    Je n'ai pas regardé ton code, mais puisque le bouclage était involontaire, il y a quelque chose qui ne va pas dans ta manière de voir ce que doit faire ton programme : tu crée un genre d'objet qui, à la création, crée le même genre d'objet, ce qui ne peut amener qu'à créer une fois encore le même genre d'objet, etc.

    Si tu ne t'attendais pas à ce que ça fonctionne comme ça, à quoi donc t'attendais-tu ? Il y a clairement 2 genres d'objets différents : celui qui crée un deuxième objet, et celui qui ne le fait pas.
    Sans danger si utilisé conformément au mode d'emploi.

    (anciennement BenWillard, enfin moins anciennement que ... enfin bon c'est une longue histoire... Un genre de voyage dans le temps...)

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci donc en suivant vos remarques je vais revoir mon code en totalité

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C++ DX9] Plusieurs problêmes (rendu de point et picking)
    Par caparenlive59 dans le forum DirectX
    Réponses: 5
    Dernier message: 13/07/2007, 16h20
  2. Réponses: 8
    Dernier message: 26/06/2007, 17h07
  3. Réponses: 3
    Dernier message: 27/04/2007, 10h29
  4. Réponses: 3
    Dernier message: 14/01/2007, 19h54
  5. Mon Outil de gestion (plusieurs problèmes)
    Par Makaveli33 dans le forum Access
    Réponses: 10
    Dernier message: 11/05/2006, 21h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo