静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。
public class testStatic2 {
/**
* 关于Static{}块的解释:
* // 随着类的加载而执行 可以由类进行调用
* 静态代码块 加载类时需要进行的初始化操作,比如说加载驱动
* 临时变量只在static这个大括号中有用。
**/
static {
int x = 8;
System.out.println("我是static,我有一个变量x="+x);
}
static int x;
public static void main(String[] args) {
System.out.println(x);
}
}
我是static,我有一个变量x=8
0