java中举例说明对象调用静态成员变量

package org.hanqi.zwxx;

public class Test {
    
    static int i=47;
    
    public void call()
    {
        System.out.println("调用call()方法");
        
        for(i=0;i<3;i++)
        {
            System.out.print(i+" ");
            
            if(i==2){
                System.out.println("\n");
                
            }    
        }
    }

    public static void main(String[] args) {

          Test t1=new Test();
          
          Test t2=new Test();
          
          t2.i=60;
         
          System.out.println("第一个实例对象调用变量i的结果:" +t1.i);
        
          t1.call();
          
          System.out.println("第二个实例对象调用变量i的结果:" +t2.i);
          
          t2.call();
        

    }

}
View Code

说明:由于使用“t2.i=60;”语句改变了静态成员变量的值,适用对象t1调用成员变量的值也为60,这正是i值被定义为静态成员变量的功效,即使使用两个对象对同一个静态成员变量进行操作,依然可以改变静态成员变量的值,因为在内存中两个对象同时指向同一块内存区域。t1.call()语句执行完毕后,i值变为3,当再次调用call()方法时又被重新赋值为0,做循环输出工作

详见课本Pg161 例7.13

posted @ 2016-03-14 16:44  1011042043  阅读(1708)  评论(0编辑  收藏  举报