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

Répondre à