首页 > 其他分享 >简述双亲委派以及为什么使用双亲委派

简述双亲委派以及为什么使用双亲委派

时间:2024-04-01 10:59:24浏览次数:24  
标签:委派 Java ClassLoader 简述 双亲 JVM 加载

你得先知道

在介绍双亲委派机制的时候,不得不提ClassLoader(类加载器)。说ClassLoader之前,我们得先了解下Java的基本知识。  

  Java是运行在Java的虚拟机(JVM)中的,但是它是如何运行在JVM中了呢?我们在IDE中编写的Java源代码被编译器编译成.class的字节码文件。然后由我们得ClassLoader负责将这些class文件给加载到JVM中去执行。  

JVM中提供了三层的ClassLoader:

  1. Bootstrap classLoader:主要负责加载核心的类库(java.lang.*等),构造ExtClassLoader和APPClassLoader。
  2. ExtClassLoader:主要负责加载jre/lib/ext目录下的一些扩展的jar。
  3. AppClassLoader:主要负责加载应用程序的主函数类
双亲委派机制

如果一个类加载器在接到加载类的请求时,它首先不会自己尝试去加载这个类,而是把这个请求任务委托给父类加载器去完成,依次递归,如果父类加载器可以完成类加载任务,就返回成功;只有父类加载器无法完成此加载任务时,才由下一级去加载。

JVM为什么采用双亲委派机制
(1)通过双亲委派机制可以避免某一个类被重复加载,当父类已经加载后则无需重复加载,保证唯一性。
(2)为了安全,保证类库API不会被修改 

标签:委派,Java,ClassLoader,简述,双亲,JVM,加载
From: https://blog.csdn.net/weixin_66196770/article/details/137224865

相关文章

  • 【Java系列】-- 双亲委派机制
    原创:mikechen双亲委派机制......
  • wireshark数据捕获实验简述
    Wireshark是一款开源的网络协议分析工具,它可以用于捕获和分析网络数据包。是一款很受欢迎的“网络显微镜”。实验拓扑图:实验基础配置:服务器:ip:172.16.1.88mask:255.255.255.0r1:syssysnamer1undoinfoenableintg0/0/0ipadd12.1.1.116quitintg0/0/1ip......
  • Linux--CPU简述
    一、计算机结构冯·诺依曼模型(VonNeumannarchitecture)是一种计算机体系结构的基本框架,由冯·诺依曼于1945年提出。它是现代计算机设计和实现的基础,被广泛应用于大多数通用计算机系统。冯·诺依曼模型的主要特点包括:存储程序:冯·诺依曼模型采用了存储程序的概念,即指令和数据......
  • Linux网络编程: TCP协议首部与可选项简述
    一、TCP/IP五层模型物理层(PhysicalLayer):物理层是最底层,负责传输比特流(bitstream)以及物理介质的传输方式。它定义了如何在物理媒介上传输原始的比特流,例如通过电缆、光纤或无线传输等。数据链路层(DataLinkLayer):数据链路层位于物理层之上,负责在直接相连的节点之间传输......
  • ISIS接口MD5 算法认证实验简述
    默认情况下,ISIS接口认证通过在ISIS协议数据单元(PDU)中添加认证字段,例如:MD5算法,用于验证发送方的身份。ISIS接口认证防止未经授权的设备加入到网络中,并确保邻居之间的通信是可信的。它可以有效地防止路由欺骗和其他恶意攻击。MD5(MessageDigestAlgorithm5)是一种常用的信......
  • ISIS外部路由实验简述
    默认情况下,level-1区域路由会传递给level-2区域,但是level-2区域路由不会传递给level-1区域。Level-2区域配置外部路由,并引入ISISLevel-1/2上把外部路由泄露给level-1区域实验拓扑图:实验基础配置:r1:syssysnamer1undoinfoenableintg0/0/0ipadd12.1.1.116qu......
  • 简述你对RPC,RMI的理解
    RPC:在本地调用远程的函数,远程过程调用,可以跨语言实现,httpClientRMI:远程方法调用,Java中用于实现RPC的一种机制,RPC的Java版本是J2EE的网络调用机制,跨JVM调用对象的方法,面向对象的思维方式RMI实现:直接或间接实现接口Java.rmi.Remote成为存在服务器端的远程对象,供客户端访问并提......
  • 3_双亲委派机制
    双亲委派机制Java虚拟机对Class文件采用的是按需加载的方式,也就是说当需要使用该类的时候才会将它的class文件加载到内存生成Class对象,而且加载某个类的Class文件时,Java虚拟机采用的是双亲委派模式,即把请求交给父类处理,它是一种任务委派模式。工作原理如果一个类加载器收到了......
  • 常用的Docker命令及其用途简述
    记录常用的Docker命令及其用途在日常的开发和运维工作中,Docker和docker-compose已经成为了不可或缺的工具。它们帮助我们轻松地构建、运行和管理容器化的应用程序。在这篇随笔中,我将记录下一些我常用的Docker和docker-compose命令,并简述它们的用途,并在每一个命令后面加上一条示例......
  • 简述Helm及其优势
    Helm是Kubernetes的软件包管理工具,Helm能够将一组K8S资源打包统一管理,是查找、共享和使用为Kubernetes构建的软件的最佳方式。Helm中通常每个包称为一个Chart,一个Chart是一个目录,优势:1)统一管理、配置和更新这些分散的k8s的应用资源文件;2)分发和复用一套应用模板;3)将应用的一......