刚学JAVA,发现 static 静态方法里不能定义静态变量,这是为什么?

如题所述

怎么说了,无论是static修饰的方法还是变量,首先,我们之所以用Static修饰有一个很直接的目的就是访问方便,当然,方法和变量各有它们的作用,方法的作用是告诉我们怎样去做具体的事,所以它里面的变量已经没有那么重要了,因为我们的方法具有普适性,对于它里面的变量的调用好像没有太大的价值,变量只不过是个形式,值都是从外面传进方法来的。所以方法体里面的变量一般不加任何修饰符
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-22
方法里的变量的使用域仅限方法内即便是静态方法'所以方法内的变量不可能是静态的
第2个回答  推荐于2016-09-24
static 静态方法里 定义的就是静态的变量,只不过作用域只在方法内。
你可以定义一个全局的静态变量。在这个方法中使用。
就可以达到你的计数增长的目的。本回答被提问者和网友采纳
第3个回答  2012-05-23
静态成员(属性和方法)都是类特有的,是为了各个对象共享数据的。比如静态变量,不属于任何一个具体的类的实例,而是属于类的。所以在使用的时候,就不需要先进行实例化,而后再去使用该变量(因为那样的变量只属于某个实例),直接Class.Property就可以使用它啦。
第4个回答  2012-05-22
我想java就是这么设计的。静态的东西主要是给类用的,你把它写到静态方法里有什么特别的用呢。 我的感觉学海无涯,不要掉到学习的海洋里。生命有限,知识无限。要学对自己目前最有用的。不一定要学成百科全书那样。追问

本来是想设置一个计数器,调一次方法加1,后来发现写在类里就行了。郁闷啊,不过你说的对,我赞成,而且程序语言发展太快了,根本跟不上。

相似回答