类加载器:
负责将java文件编译后的.class文件(存储的物理文件) 搬到虚拟机内存中,它就是个干活的东东,起中间作用。
过程:它加载搬运的过程中经历了那个流程。
大家先想想一个问题,类是在什么时候会被加载在内存中呢?
类的加载时机:
1 创建对象的时候
2 调用类的类方法(静态方法)
3 访问类或者接口的类变量、或者为该类变量赋值(静态变量)
4 使用反射方式来强制创建木一个类或者接口对应的java.lang.Class对象
5 初始化木个类的子类,他的父类也会被加载
6 直接使用java.exe命令来运行木个主类
这么多不好记:总结一下就是用到就加载,不用没得事,不用不加载。
类的加载过程:
加载 -验证 -准备- 解析 -初始化
类加载器的分类:
启动 平台 系统类 加载器
双亲委派模式
网友评论