Please enable JavaScript.
Coggle requires JavaScript to display documents.
反射01前置知识 - Coggle Diagram
反射01前置知识
类加载
过程(了解)
加载
通过类加载器获得二进制字节流
在内存中生成一个带表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口
链接
验证:确保被类加载的正确性(正确性的校验)
准备:负责为累的静态成员分配内存并设置默认化初始值
解析:将类中的符号引用替换为直接引用(真实的内存地址)
初始化
给静态成员变量赋初值,执行静态代码块内容
类加载器(掌握)
分类
Bootstrap ClassLoader 根类加载器
负责java运行时的核心类加载,
在JDK中JRE目录下lib目录下rt.java
Extension ClassLoader扩展类加载器
负责JRE扩展目录中jar包的加载,
在JDK中JRE的lib目录下ext目录
System(APP) ClassLoader系统类加载器/应用加载器
负责加载自定义的java类 classpath
双亲委派模型
逻辑上的父子关系,并不是击继承关系
类加载时机(重要)
1.创建类的实例(首次创建该类对象)
访问类的静态变量
实用类的静态方法
使用反射方式来强制创建某个类或借口对应的java.lang.Class对象
加载某个类的子类会触发父类的类加载
Java代码的三个阶段