更多 Java 基础知识方面的文章,请参见文集《Java 基础知识》
- static 变量:静态变量,属于类,在内存中只有一份拷贝
- static final 变量:全局变量,不可修改
- 如果为 static final 变量,则不能在构造方法里初始化,只能在 声明时初始化 或者 在 static 代码块中初始化,例如:
public class Final_Test {
public static final int i;
static {
i = 10;
}
public Final_Test() {
}
}
-
static 方法:静态方法,属于类:
- static 方法不能访问 this, super
- static 方法不能访问 非静态变量和非静态方法
- static 方法不能为抽象方法,必须被实现
static final 方法:不可覆盖
-
static 代码块:静态代码块,属于类
- 不在任何方法体中
- JVM 加载类时自动执行(类的初始化,不是对象的初始化)
- 如果有多个静态代码块,按代码中的先后顺序执行