Java编程中对象调用静态变量和成员变量有什么区别,该怎么处理

Java编程中对象调用静态变量和成员变量有什么区别
调用成员变量的代码:
  public class TestMain {
int i=50;
public void call(){

System.out.println("调用Call方法 ");
for(i=0;i<3;i++){
System.out.print(i+" ");
if(i==2){
System.out.println("");
}
}
}
public TestMain(){

}

public static void main(String[] args) { // 定义主方法
TestMain t1=new TestMain();
TestMain t2=new TestMain();
t2.i=60;
System.out.println("第一个实例对象调用变量i的结果:"+t1.i++);
t1.call();
System.out.println("第二个实例对象调用变量i的结果::"+t2.i);
t2.call();
}
}

输出结果:
第一个实例对象调用变量i的结果:50
调用Call方法 
0 1 2 
第二个实例对象调用变量i的结果::60
调用Call方法 
0 1 2 

但是把局部变量i定义为静态时(static int i=50)输出结果为:
第一个实例对象调用变量i的结果:60
调用Call方法 
0 1 2 
第二个实例对象调用变量i的结果::3
调用Call方法 
0 1 2  
为什么第二个实例对象调用变量i的结果为3


------解决方案--------------------
因为在for循环执行完后,i的值变成3了,所以第二个对象调用变量i,输出的结果为3.