public class T1 {
public static int a=0;
public int b=0;
}
public class T2 {
public static void main(String[] args) {
T1 t1 = new T1();
T1 t2 = new T1();
t1.a++;
t2.a++;
t1.b++;
t2.b++;
System.out.println(t1.a);
System.out.println(T1.a);
System.out.println(t1.b);
System.out.println(t2.b);
}
}
输出结果为:
2
2
1
1
T1中的静态变量a, 在内存中只有一个备份,所以无论t1,t2 对a 进行任何操作,a的值都会随之改变。
而b 则是在每个声明的类中,在每个类中均有一个备份。
静态与实例变量的区别

本文通过一个简单的Java示例程序,展示了静态变量与实例变量之间的区别。静态变量在内存中只有一份拷贝,所有对象共享同一份数据;而实例变量则在每个对象中各有一份拷贝。
2477

被折叠的 条评论
为什么被折叠?



