类的加载的理解
-
加载(准备工作)
- 1字节码放到内存
- 2静态数据转化成运行时数据结构
- 3生成java.lang.Class对象
-
链接(启动工作)
- 1验证(确保符合JVM规范)
- 2准备(为类变量【static】分配内存设置初始值)
- 3解析(虚拟机常量池符号替换为直接引用地址)
-
初始化(开始工作)
- 1执行类构造器(收集类中所有类变量中的赋值和静态代码块中的语句合并产生)
- 2初始化父类(如果存在并且还没初始化)
- 3虚拟机会保证类方法在多线程环境中被正确加锁和同步
本文主要介绍了Java类的加载过程,包括加载、链接和初始化三个阶段。加载阶段将字节码放入内存,转化静态数据并生成Class对象;链接阶段进行验证、准备和解析;初始化阶段执行类构造器,初始化父类,且虚拟机保证类方法在多线程环境中正确加锁和同步。
类的加载的理解
加载(准备工作)
链接(启动工作)
初始化(开始工作)

被折叠的 条评论
为什么被折叠?