ClassLoader
时间: 2023-12-19 19:28:50 浏览: 36
ClassLoader是Java中的一个类加载器,它负责将Java类加载到JVM中。ClassLoader可以根据不同的需求,从不同的地方加载类文件,例如从本地文件系统、网络、数据库等。ClassLoader还可以实现类的隔离,避免不同类之间的冲突。在Java中,ClassLoader主要分为三种类型:Bootstrap ClassLoader、Extension ClassLoader和Application ClassLoader。其中Bootstrap ClassLoader是JVM自带的类加载器,用于加载JVM自身需要的类,Extension ClassLoader用于加载Java的扩展类库,而Application ClassLoader则用于加载应用程序的类。此外,开发者还可以自定义ClassLoader来实现特定的需求,例如实现热部署等功能。
相关问题
classLoader
classLoader是Java中的一个重要概念,它负责将.class文件加载到JVM中,并生成对应的Class对象。Java中有三种类加载器:Bootstrap ClassLoader、Extension ClassLoader和Application ClassLoader。
Bootstrap ClassLoader是JVM自带的类加载器,它负责加载JVM自身需要的类,如java.lang包中的类。Extension ClassLoader负责加载Java的扩展库,如javax包中的类。Application ClassLoader负责加载应用程序自身的类。
Common ClassLoader
Common ClassLoader是一个常见的类加载器,它是Java虚拟机(JVM)中负责加载类文件的组件之一。ClassLoader的主要作用是将类文件加载到JVM中,并将其转换为可执行的Java字节码。
Common ClassLoader通常由三个主要组成部分组成:
1. Bootstrap ClassLoader:也称为引导类加载器,它是JVM的一部分,负责加载Java核心类库,如java.lang包中的类。Bootstrap ClassLoader是JVM内置的,通常使用C++实现,无法直接在Java代码中访问。
2. Extension ClassLoader:也称为扩展类加载器,它是Java虚拟机的一部分,负责加载Java扩展类库,如javax包中的类。Extension ClassLoader是由Java编写的,是Bootstrap ClassLoader的子类。
3. Application ClassLoader:也称为应用程序类加载器,它负责加载应用程序中的类文件。Application ClassLoader是由Java编写的,是Extension ClassLoader的子类。
这三个ClassLoader按照父子关系依次工作,当需要加载一个类时,ClassLoader会首先尝试使用自身的加载机制加载类文件,如果找不到,则会委托给父ClassLoader进行加载。如果所有的ClassLoader都无法加载该类,则会抛出ClassNotFoundException异常。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)