JVM系列(一)-- Java类的加载机制
类的加载定义
类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class
对象,用来封装类在方法区内的数据结构。
类的最终加载产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并向Java程序提供访问接口。
与C语言的类比:C语言 --> 二进制文件 --> 计算机硬件;Java --> 字节码文件 --> JVM
**注意事项:**类加载器并不需要等到某个类被“首次主动使用”时再加载,JVM规范允许类加载器在预料某个类将要被使用时就预先加载它,但是如果这个类在加载中遇到错误,只有在主动使用此类时才会报错(LinkageError)。