_Mac_ a écrit a écrit :
Ca "marche" comment un objet qui contient une méthode statique ? Que fait la JVM quand elle voit une telle classe ?
|
Je vais répondre de manière plus générale.
Les attributs d'abord. Une attribut statique, par définition, c'est un attribut de classe. Il est donc créé quand la classe est créée (plus exactement, en Java, quand elle est chargée en mémoire par le ClassLoader), et détruit quant la classe est supprimée de la mémoire.
Maintenant, les méthodes statiques sont des méthodes de classe. Elles n'ont pas d'objet receveur (this), c'est tout. A part cela, ce sont des méthodes normales.
La preuve, c'est que quand tu as un objet "a" d'une classe "A", qui contient une méthode statique "toto()", tu peux écrire "a.toto();". Ca marche.