类变量和实例变量的区别在于:类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果;而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象;
int snum = 0;
@Override
public void run() {
snum = num;
System.out.println("Thread "+ num +" is running..." + " snum: " + snum);
}
static int snum = 0;
@Override
public void run() {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
snum = num;
System.out.println("Thread "+ num +" is running..." + " snum: " + snum);
}
Thread 0 is running... snum: 0
Thread 1 is running... snum: 1
Thread 2 is running... snum: 2
Thread 3 is running... snum: 3
Thread 6 is running... snum: 6
Thread 7 is running... snum: 7
Thread 9 is running... snum: 9
Thread 4 is running... snum: 4
Thread 8 is running... snum: 8
Thread 5 is running... snum: 5
Thread 7 is running... snum: 0
Thread 0 is running... snum: 0
Thread 8 is running... snum: 0
Thread 4 is running... snum: 4
Thread 3 is running... snum: 3
Thread 1 is running... snum: 1
Thread 6 is running... snum: 2
Thread 2 is running... snum: 2
Thread 5 is running... snum: 5
Thread 9 is running... snum: 9