类的加载
1.加载
当程序引用到类时,会把class文件加载到内存中
2.链接,
为static变量赋默认的初始值
讲常量放入常量池
3.初始化
合并静态代码块与静态变量赋值语句
调用静态代码块里面的内容
注意:引用常量不会进行初始化步骤
public class Client {
public static void main(String[] args) {
System.out.println(A.m);
}
<pre><code>static class A {
static {
m = 300;
System.out.println("A 静态代码块调用");
}
static int m = 100;
}
}
> Task :Client.main() A 静�?�代码块调用 100
产生类的初始化
1.虚拟机启动页初始main所在的类
2.new一个类对象
3.调用静态变量,静态方法
4.初始化一个类,附带会初始化她的父类(如果父类没有初始化过)
被动引用: 不会初始化类
1.访问一个静态域,声明的域的类会被初始化
2.定义数组
3.引用常量
评论区