写了一个使用静态变量统计类产生的实例对象个数的程序,如下:
class Person
{
static int count=0;
public Person()
{
System.out.println(++count);
}
}
class TestPerson
{
public static void main(String [] args)
{
new Person();
new Person();
new Person();
new Person();
}
}
把count定义为静态变量的时候,运行结果是1 2 3 4,
如果去掉static,运行结果是1 1 1 1,
这是为什么啊,区别在哪里?视频上讲的,听了好几遍,也没听明白,只知道静态变量被所有的实例对象所共享。这个问题总感觉像窗户纸,一点就破,但就是想不明白,求高手点破~