简述类加载器子系统
简述类加载器子系统
-
图解:
-
作用:
负责从文件系统或者网络中加载Class文件,Class文件在文件开头有特定的文件标识
ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine决定
加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中还会存放运行时常量池信息,可能还包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射)
-
过程:加载->链接->初始化
-
加载loading:
过程:引导类加载器->扩展类加载器->系统类加载器
-
链接linking
过程:验证->准备->解析
验证 正确性,文件格式验证,元数据验证,字节码验证,符号引用验证
准备 分配默认初始值,即零值
解析 将常量池内的符号引用转换为直接引用的过程。主要针对类或接口、字段、类方法、接口方法、方法类型
-
初始化:初始化Initialization
初始化阶段就是执行 类构造器方法()的过程
-