在java中,运行java程序产生字节码文件,本身我们输入的数据机器是无法识别的,因为机器中存储的是二进制数据,所以类加载指的是将类的class文件中的二进制数据读入到内存中,把它放到运行时数据区的发方法内,然后创建一个java.lang.Class对象来封装方法区内的数据结构。类的加载最终是在堆区内的Class对象,Class对象封装了类在方法去内的数据结构,也向我们听过了访问的接口。
为什么java语言具有跨平台性 ,实际上是因为字节码文件,任意一个平台上,只要能够识别字节码,就相当于能够运行java程序。
类的加载方式有三种:
第一种:通过命令行启动JVM初始化加载
第二种:也是常用的通过Class.forName方法动态加载
第三种:通过ClassLoader.loadClass方法动态加载