Skip to content

Commit

Permalink
Update 类加载器.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Snailclimb authored May 19, 2019
1 parent 4fcb298 commit 72996ae
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions docs/java/jvm/类加载器.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,15 +112,15 @@ protected Class<?> loadClass(String name, boolean resolve)

双亲委派模型保证了Java程序的稳定运行,可以避免类的重复加载(JVM 区分不同类的方式不仅仅根据类名,相同的类文件被不同的类加载器加载产生的是两个不同的类),也保证了 Java 的核心 API 不被篡改。如果不用没有使用双亲委派模型,而是每个类加载器加载自己的话就会出现一些问题,比如我们编写一个称为 `java.lang.Object` 类的话,那么程序运行的时候,系统就会出现多个不同的 `Object` 类。

### 如果我们不想要双亲委派模型怎么办
### 如果我们不想用双亲委派模型怎么办

为了避免双亲委托机制,我们可以自己定义一个类加载器,然后重载 `loadClass()` 即可。

## 自定义类加载器

除了 `BootstrapClassLoader` 其他类加载器均由 Java 实现且全部继承自`java.lang.ClassLoader`。如果我们要自定义自己的类加载器,很明显需要继承 `ClassLoader`

## 推荐
## 推荐阅读

- <https://blog.csdn.net/xyang81/article/details/7292380>
- <https://juejin.im/post/5c04892351882516e70dcc9b>
Expand Down

0 comments on commit 72996ae

Please sign in to comment.