Эффект операции:
Консольный эффект:
===============================================
часть кода
===============================================
/hello_test/src/com/b510/test/StaticTest.java
/**
* Разница при запуске программы: переменные экземпляра принадлежат свойствам объекта, и объект экземпляра должен быть создан,<br>
* Только переменной экземпляра в нем будет выделено место, и эту переменную экземпляра можно будет использовать. Статическая переменная не принадлежит <br>
* Объект экземпляра, но принадлежит классу, поэтому его также называют переменной класса. Пока программа загружает байт-код класса,<br>.
* Без создания каких-либо объектов экземпляра статическим переменным будет выделено пространство, и статические переменные можно будет использовать. <br>
* Короче говоря, переменные экземпляра должны создать объект, прежде чем их можно будет использовать через этот объект, тогда как статические переменные могут<br>
* Непосредственно используйте имя класса для ссылки. Например, для следующей программы независимо от того, сколько объектов экземпляра создано,<br>
* Всегда выделяется только одна переменная <code>staticInt</code>, и каждый раз, когда создается объект экземпляра, <br>
* Этот <code>staticInt</code> будет увеличен на 1, однако при каждом создании объекта экземпляра будет выделяться <code>random</code>,<br>
* То есть можно выделить несколько <code>random</code>, и значение каждого <code>random</code> увеличивается только один раз. <br>
*
* @author <a href="mailto:[email protected]">хонгтен</a>
* @дата 2013-3-2
*/
общественный класс StaticTest {
частный статический int staticInt = 2;
частный int случайный = 2;
общественный StaticTest() {
статическийИнт++;
случайный++;
System.out.println("staticInt = "+staticInt+" random = "+random);
}
public static void main(String[] args) {
Тест StaticTest = новый StaticTest();
StaticTest test2 = новый StaticTest();
}
}