第1个回答 2008-04-05
静态是对成员变量的一种描述;
对于方法中的局部变量,因为方法执行完就无效了,所以就没有 static这一说法,也没有private,protected等等说法。
但是成员变量就不一样了。成员变量是类的一个属性,只要持有类的实例,这个实例的属性就有效,所以才有static这一说法,也有private,protected等等说法。
所以public static void main(String[] args){
static int a=0;
}
应改为public static void main(String[] args){
int a=0;
}
第2个回答 2008-04-05
只有类才存在静态的变量 方法只能对静态变量的操作 不能在方法内试图定义静态变量
否则的话会抛出编译错误
静态变量的本意是为了让所有的对象共享这个变量,如果在方法里面定义静态变量的话就存在逻辑错误了,也达不到你想要目的. 因为在方法定义静态变量根本没有他的任何意义. 任何对象都有自己的方法,即使是静态方法,方法内的变量也是在方法调用时候才开始分配内存,所以你想给成静态的在逻辑上存在问题. 您可以仔细想法其中的原由..
第3个回答 2008-04-05
这样写:
public class C{
static int a=0;
public static void main(String[] args){
}
}
就是这么规定的吧,记住就可以了本回答被提问者采纳
第4个回答 2008-04-05
类有静态变量和静态方法,但方法没有。