黑马程序员技术交流社区

标题: static只初始化一次,为什么不是t1呢? [打印本页]

作者: 疯狂的大猫    时间: 2015-5-13 17:00
标题: static只初始化一次,为什么不是t1呢?
  1. 1.<SPAN style="FONT-SIZE: medium"><SPAN style="FONT-SIZE: small">    class T1   
  2. 2.    {      
  3. 3.     static int t=1;   
  4. 4.     T1(int b)   
  5. 5.     {   
  6. 6.       t=b;   
  7. 7.     }   
  8. 8.   }   
  9. 9.   public class Static   
  10. 10.    {   
  11. 11.       T1 t1=new T1(2);   
  12. 12.       T1 t2=new T1(3);   
  13. 13.       T1 t3=new T1(4);   
  14. 14.       public Static()   
  15. 15.       {   
  16. 16.         System.out.println("t1: "+t1.t);   
  17. 17.         System.out.println("t2: "+t2.t);   
  18. 18.         System.out.println("t3: "+t3.t);   
  19. 19.      }   
  20. 20.      public static void main(String args[])   
  21. 21.      {   
  22. 22.        new Static();   
  23. 23.      }   
  24. 24.   }</SPAN></SPAN>  
复制代码

作者: 1017161726    时间: 2015-5-13 18:06
加static是共享数据,没加final 说明是可以二次赋值的呀。这个每个对象都有一个对静态数据赋值的过程,所以最后的结果就是最后一次被赋值的那个值啦。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2