Le 4 Apr 2002 Emmanuel . Duchastenier a �crit :
> Herv�, Comment peux-tu appeler obj.stat() si ta m�thode stat() est
> statique ??!!?
>
Je le peux, malheureusement. Certes la situation est loin d'�tre tr�s
claire. Ce qui est clair c'est qu'il y a une boulette quelque part
dans le langage � ce sujet, � mon avis.
La spec 1.0, en son chapitre "8.4.3.2 static Methods" �crit bien : "A
class method is always invoked without reference to a particular
object." Et pourtant le programme suivant compile bien et fonctionne
bien, tu pourras t'en assurant par copi�/coll�, avec n'importe quel
compilateur java :
===>
public class ApStatic
{
static void stat()
{
System.out.println("coucou !");
}
public static void main(String[] args)
{
ApStatic instance = new ApStatic();
instance.stat();
}
}
<===
Il affiche "coucou !", alors j'appelle une m�thode statique "with a
reference to a particular object" :-(
Pour r�pondre � Olivier, ce mode d'�criture n'a aucun int�r�t. Mais
il est possible.
On peut y r�pondre en disant "je ne l'emploie pas", moi j'y r�ponds
en disant "je n'emploie pas de m�thodes statiques" (ou tr�s peu).
A+.
--
Sur le Web, tout de suite.
Herve AGNOUX - diaam informatique
http://www.diaam-informatique.com