静态变量和普通变量

普通成员变量 x不共享 只是在本身的基础上做了相应处理

public class Test {
 private  int  x=100;
   public static void main(String[] args) {
     Test  hs1=new  Test(  );
      int a=++hs1.x;//a=101
       System.out.println(a);
       Test  hs2=new  Test(  );
         a= ++hs2.x;//a=101
         Test  hs3=new  Test(  );
         a= --hs3.x;//a=99
	} }

静态变量 全局共享 只要被使用 其值必改变, x-1此时变成99 而因为x是静态变量 所以hs1/hs2调用时 调用的是已被改变的(x-1)的值 也就是99
所以如下列代码所示:

private  static int  x=100;
public static void main(String[] args) {       
     x=Test.x-1;//x=99
     Test  hs1=new  Test();
      int  a=hs1.x;//a==x=99
       Test  hs2=new  Test(  );
       a= hs2.x;//a==x=99
   System.out.println("x="+a);//x=99
     }

静态变量 全局共享 只要被使用 其值必改变(如果刚才的例子不懂得话
就看一下此段代码 x总在上一段代码执行后 拿到x的值后 在进行相应处理)

private  static int  x=100;
      public static void main(String[] args) {
    	  Test  hs1=new  Test();
	      int a=++hs1.x;//a=101 此时x值变成101
	     
	       Test  hs2=new  Test(  );
               a= ++hs2.x;//a=102  //此时x的值变成101+1即102
                 a=--Test.x;//a=101
		    System.out.println("x="+a);//x=101

		}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值