daily commit

This commit is contained in:
2022-04-13 15:53:57 +08:00
parent 1763f67e34
commit 9e408f7516
15 changed files with 770 additions and 704 deletions

View File

@@ -1,8 +1,8 @@
# 类加载过程
* ## 类加载过程
* 加载次过程中会根据要加载类的全类名获取该类字节吗文件的二进制流并且将其加载到内存的方法区中。并且为该要加载的类生成一个Class对象可以作为方法区类数据的访问入口
* 链接:链接过程又分为验证、准备、解析三个阶段
* 验证:验证文件格式是否正确,并且加载的字节码数据能否被正确
* 准备:正式为类变量(静态变量)分配内存空间并且设置默认初始值
* 解析:将常量池中的符号引用替换为直接引用的过程
# 类加载过程
* ## 类加载过程
* 加载次过程中会根据要加载类的全类名获取该类字节吗文件的二进制流并且将其加载到内存的方法区中。并且为该要加载的类生成一个Class对象可以作为方法区类数据的访问入口
* 链接:链接过程又分为验证、准备、解析三个阶段
* 验证:验证文件格式是否正确,并且加载的字节码数据能否被正确
* 准备:正式为类变量(静态变量)分配内存空间并且设置默认初始值
* 解析:将常量池中的符号引用替换为直接引用的过程
* 初始化初始化阶段会调用clinit方法调用该方法会为类变量进行赋值操作对于用final修饰的类变量除外其并不是在clinit阶段被赋予最终值而是在准备阶段就赋予了最终值