java虚拟机(五)类加载的过程

类从加载到虚拟机开始到出去内存。有这么几个阶段

加载

验证

准备

解析

初始化

使用

卸载

这几个过程 并不是有这绝对的先后顺序。某些可能会混合式进行。


加载,其实虚拟机并没有规定什么时候要加载,但对于初始化是有这么几种情况必须要初始化。

1.使用new实例化对象、读取或设置一个类的静态字段。但是如果被final 修饰的就不用,因为 final的静态字段 在编译时就已经放入了常量池中。

2.反射调用

3.当你初始化一个类的时候,如果父类还没有初始化,那父类就想要加载

4.虚拟机启动的时候,main(主类)会先加载

5.使用方法句柄,句柄相当与权限弱化的指针。


发布了82 篇原创文章 · 获赞 49 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/xu505928168/article/details/97395200