修改某些图片的宽度

master
李亚楠 9 months ago
parent 343e3d283e
commit 87b0e069d3
  1. 4
      source/_posts/other/java程序启动时都发生了什么.md

@ -16,7 +16,7 @@ cover:
2. java虚拟机创建一个引导类加载器,并使用它加载sun.misc.Launcher类 2. java虚拟机创建一个引导类加载器,并使用它加载sun.misc.Launcher类
3. Launcher类创建一些其他的类加载器,比如appclassloader,随后appclassloader会去加载Main.class类。 其中main class是从jar包中的MANIFEST.MF文件找到的。 3. Launcher类创建一些其他的类加载器,比如appclassloader,随后appclassloader会去加载Main.class类。 其中main class是从jar包中的MANIFEST.MF文件找到的。
<img src="https://img.dreamlyn.cn:8443/i/2024/03/06/142407.webp"> <img src="https://img.dreamlyn.cn:8443/i/2024/03/06/142407.webp" width="100%" height="50%">
加载的过程如下: 加载的过程如下:
1. 首先把类从硬盘加载到jvm内存,具体是在方法区 1. 首先把类从硬盘加载到jvm内存,具体是在方法区
@ -25,7 +25,7 @@ cover:
4. 随后进行解析,把类内部的符号变量替换为一些静态地址. 4. 随后进行解析,把类内部的符号变量替换为一些静态地址.
5. 最后进行初始化,对静态变量赋予初始值。 5. 最后进行初始化,对静态变量赋予初始值。
<img src="https://img.dreamlyn.cn:8443/i/2024/03/06/142424.webp"> <img src="https://img.dreamlyn.cn:8443/i/2024/03/06/142424.webp" width="100%" height="50%">
> 个人理解: > 个人理解:
> 类加载过程就是读取.class文件到内存中,将其放在方法区内,然后在Java堆区创建一个java.lang.Class对象,通过Class对象来访问方法区中类的数据结构。类加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。 > 类加载过程就是读取.class文件到内存中,将其放在方法区内,然后在Java堆区创建一个java.lang.Class对象,通过Class对象来访问方法区中类的数据结构。类加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。

Loading…
Cancel
Save