Java中的static (二)

2014-11-24 09:49:24 · 作者: · 浏览: 1
"t2: " + t2.t);
System.out.println("t3: " + t3.t);
}

public static void main(String args[]) {
new Static();
}
}

class T1 {
static int t = 1;

T1(int b) {
t = b;
}
}

package com.meritit.test;

public class Static {
T1 t1 = new T1(2);
T1 t2 = new T1(3);
T1 t3 = new T1(4);

public Static() {
System.out.println("t1: " + t1.t);
System.out.println("t2: " + t2.t);
System.out.println("t3: " + t3.t);
}

public static void main(String args[]) {
new Static();
}
}

class T1 {
static int t = 1;

T1(int b) {
t = b;
}
}


运行结果:

t1: 4
t2: 4
t3: 4


该static变量只是接受了最后一次的初始化.实际这还是我们先前提到的多个实例共享一个静态的变量的问题。
总之,static就是给我们一个这样的忠告:static的东西在编译时,就已向内存要到了存取空间了。