[JAVA] prob d'exception

prob d'exception [JAVA] - Programmation

Marsh Posté le 21-02-2002 à 14:58:04    

voila quand je veux executer mon prog en java,
j'ai cette exception:
Exception in thread "main" java.lang.NoSuchMethodError: main
et je sais pas a quoi ca correspond :-(
sinon tt compile nickel...

Reply

Marsh Posté le 21-02-2002 à 14:58:04   

Reply

Marsh Posté le 21-02-2002 à 15:04:32    

ben t'as pas de méthode  
 
public static void main(String[] args)  
 
dans la classe que tu appelles!!!
 
C'est cette méthode qui est appellée par la JVM quand tu fais  
 
java MaClasse
 
ouala!!

Reply

Marsh Posté le 21-02-2002 à 15:11:27    

ben justement si ca qui m'embetes, car j'en ai une public void main(String [] arg)
 
et puis a priori pas d'erreurs de syntaxe puisque ca compile...

Reply

Marsh Posté le 21-02-2002 à 15:14:07    

Elle est pas statique, ta méthode???
 
Il faut public static void main...
 
Ca te dit qqchose,une méthode statique?? Bon, si tu sais pas, c'est une méthode d'une classe, qui ne se réfère pas à une instance de la classe : et c'est précisément pour ça que la méthode main doit être statique : au démarrage, la JVM n'a aucune instance de la clase appellée pour ionvoquer des méthodes!!

Reply

Marsh Posté le 21-02-2002 à 15:14:31    

La signature de la méthode main est importe : elle est

Code :
  1. public static void main(String[] args)


 
A part peut-être des variation de nom sur l'argument, le reste est et doit être comme je l'ai écrit.


---------------
Le site de ma maman
Reply

Marsh Posté le 21-02-2002 à 15:15:22    

'tain, gfive tu m'as grillé de 20 secondes :fou:


---------------
Le site de ma maman
Reply

Marsh Posté le 21-02-2002 à 15:15:46    

Cherytree : pas assez rapide, petit scarabé!! :p

Reply

Marsh Posté le 21-02-2002 à 15:19:34    

ok, j'ai mis public static void main (String[] arg)
maintenant ca compile pas  :-)
dans le main j'appelle repaint() et addMouseListener(ma)
or y me dit qu'elles ne sont pas static, et que j'ai pas le droit de les appeler dans un contexte static
?

Reply

Marsh Posté le 21-02-2002 à 15:23:18    

Bah oui..Tes méthodes repaint() et addMouseListener() ne sont pas statiques : elles doivent être appellées depuis une instance de ta classe...
 
Tu connais quoi, à la programmation orientée objet?? Apparament, tu t'es peut être lancé dans Java un peu vite...
 
Bon, alors, il faut que tu commences par créer une instance, avec un constructeur, puis, tu appelles les méthodes sur cette instance!

Reply

Marsh Posté le 21-02-2002 à 15:32:21    

bah merci ca marche maintenant
:-)

Reply

Marsh Posté le 21-02-2002 à 15:32:21   

Reply

Marsh Posté le 21-02-2002 à 16:05:58    

gfive a écrit a écrit :

Bah oui..Tes méthodes repaint() et addMouseListener() ne sont pas statiques : elles doivent être appellées depuis une instance de ta classe...
 
Tu connais quoi, à la programmation orientée objet?? Apparament, tu t'es peut être lancé dans Java un peu vite...
 
Bon, alors, il faut que tu commences par créer une instance, avec un constructeur, puis, tu appelles les méthodes sur cette instance!  




 
ca s'arrange pas hein ! :p


---------------
What is popular is not always right, what is right is not always popular :D
Reply

Marsh Posté le 21-02-2002 à 17:00:24    

gfive a écrit a écrit :

Bah oui..Tes méthodes repaint() et addMouseListener() ne sont pas statiques : elles doivent être appellées depuis une instance de ta classe...
 
Tu connais quoi, à la programmation orientée objet?? Apparament, tu t'es peut être lancé dans Java un peu vite...
 
Bon, alors, il faut que tu commences par créer une instance, avec un constructeur, puis, tu appelles les méthodes sur cette instance!  




 
Non, non, faut pas dire ça. D'abord c'est une erreur courante au début, quand le philosophie objet n'a pas montré toutes ses facettes. Ensuite, il faut reconnaître que lorqu'on réalise son premier vrai travail en Java, on a souvent plusieurs problèmes à résoudre : des problèmes techniques (comment faire... ?) et des problèmes d'agencement, de construction (comment bien faire... ?). Il faut laisser un peu de temps à notre ami, mais ça viendra.


---------------
Le site de ma maman
Reply

Marsh Posté le 21-02-2002 à 17:08:17    

c'est clair qu'on s'est tous fait avoir par ca au début !


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-02-2002 à 17:25:33    

Maieuuh, c'était pas méchant!! :)

Reply

Marsh Posté le 21-02-2002 à 20:39:04    

benou a écrit a écrit :

c'est clair qu'on s'est tous fait avoir par ca au début !  




I was a newbie, I, I, I was a newbie (air connu (au choix))
 

gfive a écrit a écrit :

Maieuuh, c'était pas méchant!! :)  




Ouais, ouais. :D


---------------
Le site de ma maman
Reply

Marsh Posté le 21-02-2002 à 20:40:12    

benou a écrit a écrit :

c'est clair qu'on s'est tous fait avoir par ca au début !  




 
 :sol:


---------------
What is popular is not always right, what is right is not always popular :D
Reply

Marsh Posté le 23-02-2002 à 17:03:24    

bah ouai desole
mais j'avais jamais fait gaffe au static
d'ailleurs pleins de potes se sont aussi foutu de ma gueule...
:-(
personne n'est parfait

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed