java中静态变量和实例变量到底有什么区别_看了就知道啦
运行效果:
控制台效果:
==================================================
代码部分
==================================================
/hello_test/src/com/b510/test/StaticTest.java
1 /** 2 * 3 */ 4 package com.b510.test; 5 6 /** 7 * 在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,<br> 8 * 其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某<br> 9 * 个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,<br> 10 * 不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。<br> 11 * 总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以<br> 12 * 直接使用类名来引用。例如,对于下面的程序,无论创建多少个实例对象,<br> 13 * 永远都只分配了一个<code>staticInt</code>变量,并且每创建一个实例对象,<br> 14 * 这个<code>staticInt</code>就会加1;但是,每创建一个实例对象,就会分配一个<code>random</code>,<br> 15 * 即可能分配多个<code>random</code>,并且每个<code>random</code>的值都只自加了1次。<br> 16 * 17 * @author <a href="mailto:[email protected]">hongten</a> 18 * @date 2013-3-2 19 */ 20 public class StaticTest { 21 22 private static int staticInt = 2; 23 private int random = 2; 24 25 public StaticTest() { 26 staticInt++; 27 random++; 28 System.out.println("staticInt = "+staticInt+" random = "+random); 29 } 30 31 public static void main(String[] args) { 32 StaticTest test = new StaticTest(); 33 StaticTest test2 = new StaticTest(); 34 } 35 }
转载于:https://www.cnblogs.com/hongten/archive/2013/03/02/hongten_static.html