JVM加载类
随笔笔记,仅供个人参考,小白一枚
Java虚拟机加载类的流程
1:JVM先在方法去找是否存在相应类的.class(字节码)文件,如果存在则直接使用,如果不存在会将相应的类的.class加载到方法区
2:在.class加载到方法区后会先加载非静态的内容,然后加载静态内容。
3:加载非静态内容时,直接将.class中的非静态内容加载到方法区的非静态区域
4:加载静态内容时
- 将.class中的所有静态内容加到方法区的静态区域内
- 静态内容加载完成之后,对所有静态变量进行默认初始化
- 所有静态变量加载完成之后,对所有静态变量进行显示初始化
- 静态区域下的所有静态变量显示初始化完成后,执行静态代码块
5:静态代码块执行完,类加载完成。
有问题希望大佬提出,勿喷哦