当前位置: 代码迷 >> J2SE >> java 对象与类 的小疑点
  详细解决方案

java 对象与类 的小疑点

热度:29   发布时间:2016-04-24 02:06:03.0
java 对象与类 的小问题
public class test{
  static int x1=4;
  int x2=5;
  public static void main(String args[]){
test obj1=new test();
test obj2=new test();
obj1.x1=obj1.x1+2;
obj1.x2=obj1.x2+4;
obj2.x1=obj2.x1+1;
obj2.x2=obj2.x2+6;
x1=x1+3;
System.out.println("obj1.x1="+obj1.x1);
System.out.println("obj1.x2="+obj1.x2);
System.out.println("obj2.x2="+obj2.x2);
System.out.println("test.x1="+test.x1);
}
}
为什么这4个数会等是
10
9
11
10

是因为x1 是静态的吗

------解决方案--------------------
是。
因为X1是静态的,所以每创建一个对象,它的值一直在累加,而X2是非静态的,所以不同的对象原来的值都是5,后创建的对象X2的值不受前一个对象X2值的影响。
  相关解决方案