Android 简单热修复(上)——Java类加载器
作为阳历新年的第一篇文章,本想把之前总结的用到实践中,简单写了个钟表,写着写着感觉索然无味(/ □ )。写完后,百无聊赖之际,随便翻看了些技术文章。让我眼前为之一亮的有两个: Android 破解跳一跳 Android 简单热修复原理 作为Android狗的我果断选择了热修复的介绍,在看完Android类加载器的源码后,对于简单的热修复原理算是了解了一些。遂作此文,以谨记。 在介绍Android热修复原理之前,有必要了解下关于Java的类加载器的相关知识。在《深入理解Java虚拟机》一书中关于类加载的可以分为五个过程: 加载 在加载过程中需要完成3件事情: 1.1 通过一个类的全限定名来获取定义此类的二进制字节流。 1.2 将这个字节流所代表的静态存储结构转换为方法区的运行时数据结构。 1.3 在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口。 验证 这一阶段的主要目的是为了确保Class文件的字节流中包含的信息符合当前虚拟机的要求,并且不会危害虚拟机自身的安全。 准备 准备阶段是正式为类变量分配内存并设置类变量初始值的阶段 ,这些变...