类的加载过程概述

  • 类加载子系统的作用

类的加载过程概述_第1张图片

①类加载子系统负责从文件系统或者网络中加载class文件,class文件在文件开头有特定的文件标识。

②ClassLoader只负责class文件加载,至于它是否可以运行,则由于Execution Engine 决定

③加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中还会存放运行时常量池信息,可能还包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射)

 

  • 类加载器ClassLoader角色

 

类的加载过程概述_第2张图片

① class file 存在本地硬盘上,可以理解为设计师画在纸上的模板,而最终这个模板在执行的时候要加载到JVM当中来根据这个文件实例化出n个一模一样的实例,这个实例的属性都一样,但是属性的变量值可能不同。

② class file 加载到JVM中,被成为DNA元素数据模型,放在方法区

③ 在 .class 文件 -> JVM -> 最终成为元数据模板,此过程就要一个运输工具(类加载器 Class Loader),扮演一个快递员的角色。

 

 

  • 类的加载过程

类的加载过程概述_第3张图片

你可能感兴趣的:(JVM)