Java静态变量与实例变量的差别
Java静态变量与实例变量的区别。
直接上代码:
/** * 静态变量与实例变量区别 * @author Rain */ public class StaticTest_1 { private static int i=0; private int j=0; public StaticTest_1() { i++; j++; System.out.println("i="+i+" j="+j); } public static void main(String[] args) { StaticTest_1 s1=new StaticTest_1(); StaticTest_1 s2=new StaticTest_1(); StaticTest_1 s3=new StaticTest_1(); StaticTest_1 s4=new StaticTest_1(); StaticTest_1 s5=new StaticTest_1(); StaticTest_1 s6=new StaticTest_1(); StaticTest_1 s7=new StaticTest_1(); } }
i为静态变量,j为实例变量,静态变量是全局的,对于任何一个此类的对象,i都是同一个;实例变量每个对象都有各自的一份,所以上述代码中i是随对象的个数而逐渐累加的,而j是每次调用构造器只累加一次。