static学习总结
static关键字
在类中,用static声明的成员变量为静态成员变量,也称为类变量。类变量的生命周期和类相同,在整个应用程序执行期间都有效。
注意
-
static修饰的成员变量和方法,从属于类,可以通过类名调用
- static修饰的成员变量在赋值一次后对所有对象有效
- 静态方法不能调用非静态成员(子方法static去掉的报错的原因)
例:
public class square { public static void main(String[] args) { int result; for (int x = 1; x <= 10; x++) { result = square(x); // Math库中也提供了求平方数的方法 // result=(int)Math.pow(x,2); System.out.println("The square of " + x + " is " + result + "\n"); } } // 自定义求平方数的静态方法 public static int square(int y) { return y * y; } }
在该代码中,如果删去square方法前的static就会出现如下报错,原因是main函数是用static修饰的,而静态方法不能调用非静态成员,所以可以删去main函数前的static或者给square函数前加上static。