Skip to content

Commit

Permalink
Add directory
Browse files Browse the repository at this point in the history
  • Loading branch information
Snailclimb authored May 18, 2019
1 parent 2c4725d commit e32ab47
Showing 1 changed file with 24 additions and 5 deletions.
29 changes: 24 additions & 5 deletions docs/java/jvm/类加载过程.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,23 @@
# 类加载过程
<!-- TOC -->

Class 文件需要加载到虚拟机中之后才能运行和使用,那么虚拟机是如何加载这些 Class 文件呢?
- [类加载过程](#类加载过程)
- [加载](#加载)
- [验证](#验证)
- [准备](#准备)
- [解析](#解析)
- [初始化](#初始化)

系统加载 Class 类型的文件主要三步:**加载->连接->初始化**。连接过程又可分为三步:**验证->准备->解析**
<!-- /TOC -->

> 公众号JavaGuide 后台回复关键字“1”,免费获取JavaGuide配套的Java工程师必备学习资源(文末有公众号二维码)。
# 类加载过程

![类加载过程](http://pqrlmrv7w.bkt.clouddn.com/img/2019-4/类加载过程.png)
Class 文件需要加载到虚拟机中之后才能运行和使用,那么虚拟机是如何加载这些 Class 文件呢?

系统加载 Class 类型的文件主要三步:**加载->连接->初始化**。连接过程又可分为三步:**验证->准备->解析**

![类加载过程](http://pqrlmrv7w.bkt.clouddn.com/img/2019-4/类加载过程.png)

## 加载

Expand Down Expand Up @@ -67,4 +76,14 @@ Class 文件需要加载到虚拟机中之后才能运行和使用,那么虚

- 《深入理解Java虚拟机》
- 《实战Java虚拟机》
- <https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-5.html>
- <https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-5.html>

### 公众号

如果大家想要实时关注我更新的文章以及分享的干货的话,可以关注我的公众号。

**《Java面试突击》:** 由本文档衍生的专为面试而生的《Java面试突击》V2.0 PDF 版本[公众号](#公众号)后台回复 **"Java面试突击"** 即可免费领取!

**Java工程师必备学习资源:** 一些Java工程师常用学习资源[公众号](#公众号)后台回复关键字 **“1”** 即可免费无套路获取。

![我的公众号](https://user-gold-cdn.xitu.io/2018/11/28/167598cd2e17b8ec?w=258&h=258&f=jpeg&s=27334)

0 comments on commit e32ab47

Please sign in to comment.