tp6 q1 NullPointerException

Programmation Avancée

Modérateur : Douin

tasic
Messages : 28
Inscription : 09 oct. 2016 14:13

tp6 q1 NullPointerException

Message par tasic » 20 nov. 2016 2:29

Bonjour,

J'ai un résultat de jnews que je n'arrive pas à comprendre/résoudre
testMultiplication(question1): exception inattendue ???java.lang.NullPointerExceptionnull
...

Je comprends bien qu'il faut gérer l’exception si une expression est renseigné à null
mais je sais pas ou gérer l'exception.

merci par avance

THEVENON
Messages : 8
Inscription : 14 nov. 2016 19:46

Re: tp6 q1 NullPointerException

Message par THEVENON » 20 nov. 2016 12:55

Bonjour,

Tu dois appeler la méthode visite du visiteur par défaut qui retourne null.
Tu ne te serais pas trompé sur le nom de la méthode qui la surcharge :" public String visite (Multiplication m)". style "visit" sans e?

bon courage

tasic
Messages : 28
Inscription : 09 oct. 2016 14:13

Re: tp6 q1 NullPointerException

Message par tasic » 20 nov. 2016 20:05

Non tout va bien dans le nom des méthodes surchargés.
j'ai pas mis tous les messages d'erreur dans mon premier post mais en gros j'avais ça :

1) testMultiplication(question1): exception inattendue ???java.lang.NullPointerExceptionnull
2) testMultiplication2(question1): exception inattendue ???java.lang.NullPointerExceptionnull
3) testDivision2(question1): exception inattendue ???java.lang.NullPointerExceptionnull
4) testUneAddition2(question1): exception inattendue ???java.lang.NullPointerExceptionnull
5) testSoustraction(question1): exception inattendue ???java.lang.NullPointerExceptionnull
6) testSoustraction2(question1): exception inattendue ???java.lang.NullPointerExceptionnull
7) testDivision(question1): exception inattendue ???java.lang.NullPointerExceptionnull

Donc si je comprends bien ta réponse
quand on arrive dans visite(Multiplication a) d'un des visiteurs par exemple et qu'on détecte une valeur null alors on appelle VisiteurParDefaut ?

Joris_Oziol
Messages : 52
Inscription : 15 oct. 2016 13:59

Re: tp6 q1 NullPointerException

Message par Joris_Oziol » 21 nov. 2016 0:55

tasic as tu essayé un truc de ce genre :

Code : Tout sélectionner

return  m.op1().accepter(this) * m.op2().accepter(this);
dans VisiteurEvaluation pour Multiplication ?

tasic
Messages : 28
Inscription : 09 oct. 2016 14:13

Re: tp6 q1 NullPointerException

Message par tasic » 22 nov. 2016 19:27

@Joris_Oziol : Oui en faites si tu ne fais que ça tu as le problème du NullPointerException

Y'a autre chose à faire et je ne trouve pas :)

Joris_Oziol
Messages : 52
Inscription : 15 oct. 2016 13:59

Re: tp6 q1 NullPointerException

Message par Joris_Oziol » 22 nov. 2016 21:45

@tasic

Code : Tout sélectionner

public <T> T accepter(VisiteurExpression<T> v) {
		return v.visite(this);
	}
cette méthode est importante ... <T> ...générécité

ewen
Messages : 10
Inscription : 07 oct. 2016 9:32

Re: tp6 q1 NullPointerException

Message par ewen » 23 nov. 2016 12:07

Bonjour,

Pour le soucis du NullPointerException, une réponse a été apportée dans ce post.
C'est un problème de méthode mal redéfinie (ou pas du tout dans mon cas).

Voici le code posté par gautier pour la classe VisiteurEvaluation
public Integer visite(Variable v) {
return c.lire(v.nom());
}

tasic
Messages : 28
Inscription : 09 oct. 2016 14:13

Re: tp6 q1 NullPointerException

Message par tasic » 26 nov. 2016 1:04

haha !

J'avais mis un commentaire sur celle là en me disant que j'avais pas bien fait
Puis je ne sais pas pourquoi en avançant dans le code j'ai oublié ce morceau
Effectivement c'était bien le problème.
Le soulagement !

Merci

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité