插件化,热修复基础之classloader

2020-03-09  本文已影响0人  Big_Sweet

java的classloader


image.png

类的加载过程


image.png

android的classloader

bootclassloader:主要用来加载android framwork层的字节码文件
pathclassloader :加载已经安装的apk的class文件
dexclassloader:用来加载指定目录的字节码文件
basedexclassload:父类

双亲代理模型

加载class之前,会找当前的classloader是否被加载过这个class,加载过直接返回,没有加载过,会找父parent是否加载,加载过就直接返回。提供加载效率。同时防止核心类篡改
特点:
类加载的共享功能
类加载的隔离功能
不同的classloader加载不同的class
ps:同一个类的判断标准是包名相同,类名相同,且是同一个classloader加载

loadclass方法


image.png
上一篇 下一篇

猜你喜欢

热点阅读