您的位置:首页 > 编程语言 > Java开发

java中类加载机制

2016-04-18 14:08 260 查看
JVM将类加载过程分为三个步骤:装载(Load),链接(Link)和初始化(Initialize)链接又分为三个步骤,如下图所示:

类加载阶段就是类加载器负责根据一个类的权限名来读取此类的二进制字节流JVM内部,并存储在运行时内存区中的方法区中,然后转换为一个与目标对应的java.lang.Class对象的实例。



这个Class对象在日后就会作为方法区中该类的各种数据的访问入口。

在链接阶段主要做的事情就是将已经加载到JVM的二进制字节流的类数据信息合并到JVM的运行状态中,然后连接有验证,准备,解析阶段组成,其中验证阶段的主要任务是验证类数据信息是否符合jvm的规范,是否是一个有效的字节码文件,而验证的内容则涵盖啦类数据信息的格式验证,语义分析,操作验证等,准备阶段,就是为所有的静态变量分配内存空间,并为其设置一个初始值,解析阶段,就是将常量池中的所有符号引用转化为直接引用。类加载的过程就是初始化这个阶段,jvm会见一个类中所有的被static关键字标志的代码统一执行一遍,如果执行的事静态变量,就会使用用户指定的值覆盖原来初始化的值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: