日期:2014-05-20  浏览次数:20685 次

java中静态方法是不能向对象实施操作的方法.我的理解怎么不是这样?
public   class   test
{
    int   a=10;
    pulblic   static   void   main(String   []   args)
    {
          test   test=new   test();
          System.out.print(test.a);
    }
  }
/*我在静态方法里对对象进行了操作了,还访问了他了实例域。我的理解不知道是怎么回事,肯请大师指点!!!
 
                                                                                  谢谢!!!*/

------解决方案--------------------
你那个test对象是main方法局部的,也就是它自己的,当然可以了。
所谓“静态方法不能直接访问非静态成员”,意思是指,你不可以写这种代码:
public class test
{
int a=10;
pulblic static void main(String [] args)
{
System.out.print(a);
}
}
------解决方案--------------------
楼上说的对,main方法中不可以直接访问非静态的变量,可以把a声明成静态的