public class a
{public static void main(string args[])
{int a;
..................
}}
请问此时的变量a是静态变量吗?那是不是在静态方法中定义的变量就都是静态变量呢?请大家给予指正谢谢

解决方案 »

  1.   

    当然不是啦,静态变量前加static 
      

  2.   

    我在书上看到这样的话:“静态方法只能操作静态变量”,那这个MAIN方法是不是静态的方法呢?若是的话,它又怎么能操作这个不是静态的变量呢?请帮助我解释一下谢谢大家
      

  3.   

    public static void main方法是一个程序的入口,你执行一个程序就会从main方法开始执行,当然只能有一个 所以是静态的(除非你执行两个程序),(其实这牵扯到java的内存管理问题,JAVA有一个静态的方法区),你可以先照上面的理解,main方法是在程序执行最开始之前就加载到内存中,然后从它开始执行,而int a这个变量是要执行到main方法内部执行到int a;这一行的时候才会加载到内存中
      

  4.   

    你这个程序能编译通过?局部变量a必须在定义的时候初始化附值,除非定义为成员变量
    如果是成员变量,要在main中使用,则需要static修饰,因为2者的生命周期不同
      

  5.   

    class a中的a是类名
    int a 就是一个普通的变量啦
    如果 a a呢那就是一个类型为a的名字为a的引用啦
    明白没
      

  6.   

    静态方法中的变量不一定是静态变量,要加static