static的简单理解

 java的static关键字是非常有用的.
  
  有两种情况是non-static无法做到的,这时你就要使用statice。
  
   第一种:你希望不论产生了多少个对象,或不存在任何对象的情形下,那些特定数据的存储空间都只有一份;
  
   第二种:你希望某个函数不要和class object绑在一起。即使没有产生任何object,外界还是可以调用其static函数,或是取用其static data。
  
   如何理解呢,看完下面的小例子,就会理解了。
  
   public class StaticTest {
   static int i = 47;
   }
  
   public class Test {
   public static void main(String[] args) {
   StaticTest t1 = new StaticTest();
   StaticTest t2 = new StaticTest();
   t1.i = 50;
   System.out.println(t1.i);
   System.out.println(t2.i);
   }
   }
  
   结果为:
  
   50
  
   50
  
  
   为什么会有这样的结果呢?这是因为它们都指向同一块内存。
  
   另外,调用static函数或变量,除了利用对象定址外(t1.i = 50),也可以直接使用其class名,即(StaticTest.i = 50)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值