类加载过程-《java高并发编程详解》第九章 重点记录

Posted lhh666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类加载过程-《java高并发编程详解》第九章 重点记录相关的知识,希望对你有一定的参考价值。

本章主要是讲列的加载过程,class文件是如何被JVM加载并且最后得以运行的。


类的加载过程一般分为三个大阶段,加载阶段、连接阶段、初始化阶段

 技术图片

----加载阶段:主要负责查找并且加载类的二进制数据文件(class文件)。

----连接阶段:连接阶段还可以分为验证、准备、解析阶段。

  1. 验证:确保类文件的正确性,class的版本,class文件的魔术因子是否正确
  2. 准备:为类的静态变量分配内存,并且为其初始化默认值
  3. 解析:类中的符号引用转换为直接引用

----初始化阶段:为类的静态变量赋予正确的初始值(代码编写给的值)


 

jvmjava虚拟机在我们执行java命令启动后,可能有很多的类,每个类不一定都会初始化。jvm对类的初始化使用了lazy方式的延迟机制,当一个类在首次使用的时候才会被初始化,在一个运行时包下一个类只会被初始化一次。运行时包和类的包有区别。

 

以上是关于类加载过程-《java高并发编程详解》第九章 重点记录的主要内容,如果未能解决你的问题,请参考以下文章

Python之旅.第九章.并发编程

第九章 - 高并发测试

《Java并发编程实战》第九章 图形用户界面应用程序界面 读书笔记

《Java并发编程实战》第九章 图形用户界面应用程序界面 读书笔记

Java编程思想---第九章 接口(上)

《Java编程思想》笔记 第九章 接口