在 类加载过程 中介绍了 解析阶段是虚拟机将常量池内的符号引用替换为直接引用的过程,也就是得到类或者字段、方法在内存中的指针或者偏移量
虚拟机把16进制描述类的 .class
文件加载到内存,并对数据进行校验、解析和初始化等操作,最终变为可以被虚拟机使用的 Java 类型,这就是虚拟机的类加载机制
或者说
通过类加载机制,虚拟机把类的字节码转换成运行时数据结构,并保存在方法区,在内存中会生成一个代表这个类数据结构的 java.lang.Class 对象,后续访问这个类的数据结构就可以通过这个 Class 对象来访问
Java虚拟机运行Java程序时会将所管理的内存分为不同的数据区域。这些区域的作用以及生命周期都不同。有的随虚拟机进程创建而创建,有的则随线程的启动和结束而建立和销毁。下图是 JDK1.7的运行时数据区