java中的类加载器简介

说道java中的类加载器,我们先说说的类的加载,什么是类的加载呢?

类的加载

当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来进行初始化。

加载

       将class文件读入内存,并为之创建一个Class对象。

       任何类被使用时都会建立一个Class对象

连接

       验证 是否有正确的内部结构,并和其他类协调一致

       准备 负责为类的静态成员分配内存,并设置默认的初始化值

       解析 将类的二进制数据中的符号引用替换为直接引用

初始化

      真正开始执行类中定义的Java程序代码。

在类使用前一定是先加载,且加载的是class文件。

类加载器

  • 负责将.class文件加载到内存中,并为之生成对应的Class对象。


类加载器的组成及作用

  • Bootstrap ClassLoader 根类加载器:负责java核心类的加载,如String,System。在JDK中JRE的lib目录下的rt.jar文件中。
  • Extension ClassLoader 扩展类加载器:负责JRE的扩展目录中jar包的加载。在JRE的lib目录下ext目录
  • System ClassLoader 系统类加载器:负责在JVM启动时来加载来自java命令的class文件,以及classpath环境变量所指的jar包和类路径

猜你喜欢

转载自blog.csdn.net/loli_kong/article/details/87895213