类加载子系统的作用
类加载子系统负责从文件系统或者网络中加载class文件,class文件在文件开头有特定的文件标识即16进制CA FE BA BE。
加载后的Class类信息存放于一块成为方法区的内存空间。除了类信息之外,方法区还会存放运行时常量池信息,可能还包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射)。
来一张经典的JVM内存结构图:其中类加载器的工作范围只限于下图的左半部分,不包含调用构造器实例化对象。
ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine决定。
如果调用构造器实例化对象,则其实例存放在堆区。
类加载子系统功能细分