Effet de fonctionnement :
Effet console :
===================================================
partie du code
===================================================
/hello_test/src/com/b510/test/StaticTest.java
/**
* La différence lorsque le programme est en cours d'exécution : les variables d'instance appartiennent aux propriétés d'un objet, et un objet instance doit être créé,<br>
* Seule la variable d'instance qu'elle contient se verra attribuer de l'espace et cette variable d'instance pourra être utilisée. La variable statique n'appartient pas à un<br>
* Un objet instance, mais appartient à une classe, il est donc également appelé variable de classe Tant que le programme charge le bytecode de la classe,<br>
* Sans créer d'objets d'instance, les variables statiques se verront attribuer de l'espace et les variables statiques pourront être utilisées. <br>
* En bref, les variables d'instance doivent créer un objet avant de pouvoir être utilisées via cet objet, tandis que les variables statiques peuvent<br>
* Utilisez directement le nom de la classe pour faire référence. Par exemple, pour le programme suivant, quel que soit le nombre d'objets d'instance créés,<br>
* Une seule variable <code>staticInt</code> est toujours allouée, et chaque fois qu'un objet instance est créé, <br>
* Ce <code>staticInt</code> sera incrémenté de 1 cependant, chaque fois qu'un objet instance est créé, un <code>aléatoire</code> sera alloué,<br>
* Autrement dit, plusieurs <code>random</code> peuvent être alloués, et la valeur de chaque <code>random</code> n'est incrémentée qu'une seule fois. <br>
*
* @auteur <a href="mailto:[email protected]">hongten</a>
* @date 2013-3-2
*/
classe publique StaticTest {
privé statique int staticInt = 2;
privé int aléatoire = 2 ;
public StatiqueTest() {
staticInt++;
aléatoire++ ;
System.out.println("staticInt = "+staticInt+" random = "+random);
}
public static void main (String[] arguments) {
Test StaticTest = nouveau StaticTest();
StaticTest test2 = new StaticTest();
}
}