类加载器

来源:互联网 发布:android 读取蓝牙数据 编辑:程序博客网 时间:2024/06/06 06:39

类加载器的作用:

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

了解类加载机制能够更好的理解程序的运行。


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

加载

1只将class文件读取到内存中,并为之创建一个Class对象

2任何类被使用时系统都会建立一个class对象

 

连接

1)验证 是否有正确的内部结构;

2)准备 负责为类的静态成员非配内存,并设置默认初始化值;(静态成员的调用:类名.成员变量;其实本质上是类对象.成员变量,)(静态成员变量和类同时加载

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

 

初始化:调用构造函数,为成员变量赋值。

 

类的初始化时机

1)创建类的实例的时候

2)为类的静态变量赋值的时候

3)调用类的静态方法的时候

4)使用反射方式来强制创建某个类或者接口对应的java.lang.Class对象

5)初始化某个类的子类的时候

6)直接使用java.exe命令来运行某个主类的时候


不同的类加载器,加载不同的资源到内存中,以保证java程序的正常运行。(根类加载器,扩展类加载器,系统类加载器

0 0
原创粉丝点击