`

jvm 加载同包 类

 
阅读更多
如果我自己新建立一个类,叫做 java.util.ArrayList.
那个我自己去访问这个自己写的类是访问不到的,因为类加载器去加载的时候首先是去
启动加载器里找,找不打再去EXT加载去里找,最后才去App加载器。

这里因为java.util.ArrayList是启动加载器里的rt.jar,所以我们自己写的永远不能被访问到,除非我们自己改写rt.jar.


如果我们建个java.util.MyList.
那个当访问这个类的时候会报禁止访问异常,因为java.util这个包名是被 启动加载器保护了的。 不同加载器之间的包访问权限都禁止的。

我们可以猜想我们把这个类塞到rt.jar里去,估计就可以了。
分享到:
评论

相关推荐

    JVM实战-JVM类加载机制案例分析

    2. **类加载器及类加载器的委托机制**:JVM中有三种内置的类加载器,分别是启动类加载器、扩展类加载器和应用类加载器。此外,还可以自定义类加载器。类加载器之间遵循委托机制,即下级类加载器先请求上级类加载器...

    JVM类加载机制详细讲解

    类冲突通常发生在不同加载器加载了相同包名下的类,导致版本不一致。类循环依赖则可能引发无限递归,使得类加载失败。解决这些问题通常需要对类加载器的实现和类的组织结构有深入理解。 2. 再分析类加载 类加载不仅...

    jvm 加载class文件

    通过对Java中JVM加载`.class`文件的过程及其类加载器的具体工作原理的介绍,我们可以更加深刻地理解Java程序的运行机制。了解这些基础知识对于开发高质量的Java应用程序至关重要。通过掌握类加载器的工作方式,...

    深入Java虚拟机_002_深入详解JVM之类加载器深度剖析、根、扩展及系统类加载器

    本部分我们将深入探讨JVM中的类加载器,特别是根类加载器、扩展类加载器和系统类加载器。 首先,让我们了解类加载的基本过程。当JVM启动时,会触发类加载。这个过程分为三个阶段:加载、链接和初始化。加载阶段,类...

    jvm字节码自动加载

    在Java虚拟机(JVM)中,字节码自动加载是一项关键功能,它使得Java程序能够在运行时动态地发现和加载类。字节码是由Java源代码编译而成的二进制格式,它包含了类和接口的信息。了解JVM如何自动加载字节码对于深入...

    javareble 热加载jvm插件

    JavaRebel是一款强大的JVM热加载插件,它极大地提升了Java开发者的生产力,尤其是在进行Web应用编程时。这款工具允许开发者在代码修改后立即看到结果,而无需重新启动服务器或重新部署应用程序。这一特性显著减少了...

    JVM类加载跟踪器

    JVM类加载跟踪器,用于排查jar包冲突、类冲突、类版本冲突、NoClassDefFoundError、ClassNotFoundException 等等类加载相关问题的辅助工具

    JVM(三):类加载机制(类加载过程和类加载器)1

    在这个阶段,JVM通过类全名(包括包名和类名)来获取类的二进制字节流。这个字节流可以来自多种来源,如磁盘上的`.class`文件、网络、动态生成等。字节流被转换为方法区的运行时数据结构,并在Java堆中创建一个`java...

    动态加载jar包

    默认情况下,JVM会使用系统类加载器来查找和加载类,但我们可以自定义类加载器来实现特定的加载逻辑,比如从特定的jar文件中加载类。 以下是动态加载jar包的基本步骤: 1. **创建自定义类加载器**:首先,我们需要...

    JVM类加载机制1

    Java虚拟机(JVM)的类加载机制是Java运行时环境的重要组成部分,它负责将类的字节码文件加载到内存中,进行一系列处理并使其成为可执行的Java类型。这个过程包括五个主要阶段:加载、验证、准备、解析和初始化。 1...

    Java虚拟机JVM类加载学习笔记

    本文主要探讨JVM的类加载机制,包括类加载、连接、初始化等关键过程,以及类的主动使用和被动使用的情况。 首先,我们要理解**类加载**的作用。JVM的类加载器(ClassLoader)负责将编译后的`.class`文件加载到内存...

    JAVA-JVM-01类加载机制

    《JAVA-JVM-01类加载机制》 Java虚拟机(JVM)是Java程序运行的基础,其中类加载机制是其核心组成部分。本文将深入剖析Java中的类加载器和双亲委派机制,并通过示例讲解如何自定义类加载器。 类加载过程是Java程序...

    JVM:类加载器子系统.pdf

    Java虚拟机(JVM)的类加载器子系统是Java运行时环境的一个重要组成部分,它负责将.class文件加载到内存中,并生成对应的Java类对象。这一过程涵盖了从文件系统或网络获取.class文件、验证类文件的正确性、准备类...

    springboot+java类热加载

    `ClassUtil.java`可能包含了一些辅助方法,用于在运行时编译修改后的Java源码,然后由类加载器加载到JVM中。Java的`javac`工具或第三方库如Apache Ant或Maven的Compiler插件可以用于此目的。 **自动引用依赖**:在...

    深入Java虚拟机JVM类加载学习笔记

    ### 深入Java虚拟机JVM类加载学习笔记 #### 一、Classloader机制解析 在Java虚拟机(JVM)中,类加载器(ClassLoader)是负责将类的`.class`文件加载到内存中的重要组件。理解类加载器的工作原理对于深入掌握JVM以及...

    java 类从哪个jar包加载的

    Bootstrap ClassLoader负责加载JRE核心库(如rt.jar),Extension ClassLoader负责加载JRE扩展目录下的JAR包,而App ClassLoader则加载应用程序的CLASSPATH中的类和JAR包。 当JVM需要加载一个类时,它会委托给合适...

    类加载器文件

    - **直接引用**: 当一个类直接引用另一个类时(例如,类A引用类B),JVM会使用加载类A的类加载器来加载类B。 - **反射调用**: 使用`Class.forName()`方法也会触发类的加载。 - **初始化**: 当类的静态块或静态成员被...

    Java URLClassLoader动态加载jar包1

    然后,使用`Class.forName()`方法,指定了要加载的类全名(包括包名)"org.javaweb.url.Url",并传入`URLClassLoader`实例作为上下文类加载器,这样就可以确保这个类是由这个特定的`URLClassLoader`加载的。...

Global site tag (gtag.js) - Google Analytics