美文网首页Java
[Java] 类装载器的体系结构

[Java] 类装载器的体系结构

作者: 何幻 | 来源:发表于2016-03-07 07:15 被阅读50次

在Java虚拟机中,存在着多个类装载器,称为类装载器子系统
一个Java程序可以使用两种类装载器,启动类装载器用户定义的类装载器
启动类装载器是Java虚拟机实现的一部分,使用默认方式从本地磁盘装载类。用户定义的类装载器是一个普通的Java对象,是在运行时创建的,可以使用自定义的方式装载类。用户定义的类装载器,使得在运行时扩展Java应用程序成为可能。

每一个类被装载的时候,Java虚拟机都监视这个类,看它到底是被启动装载器还是被用户定义的类装载器装载。当被装载的类引用了另外一个类时,虚拟机就会使用装载第一个类的类装载器装载被引用的类。

一个Java程序可以创建多个用户定义的类装载器,每一个类装载器都有它自己的命名空间,被不同的类装载器装载的类,存放在不同的命名空间中。

双亲委派模式:如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求委派给父类加载器去完成。每一个层次的类加载器都是如此,因此所有的加载请求最终都应该传递到顶层的启动类加载器中。只有当父类加载器反馈自己无法完成这个请求(它的搜索范围中没有找到所需的类)时,子加载器才会尝试自己去加载。

运行时包:指的是由同一个类装载器装载的,属于同一个包的,多个类型的集合。
在两个类型之间对包内可见的成员进行访问时,虚拟机不但要确定这两个类型属于同一个包,还必须确认它们属于同一个运行时包——由同一个类装载器装载的。

相关文章

  • 深入JAVA虚拟机-第二版

    第一章 JAVA体系结构介绍 java应用程序可以使用两种类装载器,启动(bootstrap)类装载器和用户自定义...

  • [Java] 类装载器的体系结构

    在Java虚拟机中,存在着多个类装载器,称为类装载器子系统。一个Java程序可以使用两种类装载器,启动类装载器和用...

  • java重中之重——类装载器的体系结构

    一个Java应用程序可以使用两种类装载器:"启动(bootstrap)"类装载器和用户定义的类装载器。启动类装载器...

  • java类装载器ClassLoader

    java类装载器ClassLoader1.类装载器的工作机制类装载器就是寻找类的字节码文件并构造出类在JVM内部表...

  • JVM学习笔记之类装载器-ClassLoader

    JVM学习笔记之类装载器-ClassLoader 本文字数:2300,阅读耗时7分钟 JVM体系结构概览 类装载器...

  • 类装载器ClassLoader

    类装载器工作机制 类装载器就是寻找类的节码文件并构造出类在JVM内部表示对象的组件。在Java中,类装载器把一个类...

  • 类装载器Classloader

    1.类装载器的工作机制类装载器就是寻找类的字节码文件并构造出类在JVM内部表示对象的组件。在Java中,类装载器把...

  • ClassLoader源码解析

    Java中的所有类,必须被装载到jvm中才能运行,这个装载工作是由jvm中的类装载器完成的,类装载器所做的工作实质...

  • 深度分析Java的ClassLoader机制(源码级别)

    Java中的所有类,必须被装载到jvm中才能运行,这个装载工作是由jvm中的类装载器完成的,类装载器所做的工作实质...

  • 深度分析Java的ClassLoader机制(源码级别)--委托

    写在前面:Java中的所有类,必须被装载到jvm中才能运行,这个装载工作是由jvm中的类装载器完成的,类装载器所做...

网友评论

    本文标题:[Java] 类装载器的体系结构

    本文链接:https://www.haomeiwen.com/subject/fgrnkttx.html